Android開(kāi)發(fā)實(shí)現(xiàn)實(shí)時(shí)檢測(cè)藍(lán)牙連接狀態(tài)的方法【附源碼下載】
本文實(shí)例講述了Android開(kāi)發(fā)實(shí)現(xiàn)實(shí)時(shí)檢測(cè)藍(lán)牙連接狀態(tài)的方法。分享給大家供大家參考,具體如下:
本程序能實(shí)時(shí)監(jiān)聽(tīng)并檢測(cè)Android藍(lán)牙的連接狀態(tài),無(wú)論是通過(guò)界面上的switch按鈕打開(kāi)/關(guān)閉手機(jī)藍(lán)牙,還是手動(dòng)打開(kāi)/關(guān)閉手機(jī)藍(lán)牙,程序都能監(jiān)聽(tīng)當(dāng)前的狀態(tài)。
一、軟件界面

二、程序?qū)崿F(xiàn)
① switch開(kāi)關(guān)—-打開(kāi)/關(guān)閉藍(lán)牙
Switch switchTest = (Switch) findViewById(R.id.switch1);
switchTest.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
mBluetoothAdapter.enable();//打開(kāi)藍(lán)牙
} else {
mBluetoothAdapter.disable();// 關(guān)閉藍(lán)牙
}
}
});
② 查看藍(lán)牙狀態(tài)監(jiān)聽(tīng)
Button btn = (Button) findViewById(R.id.button);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(MainActivity.this, "bluetooth is " +bluetoothStatus,
Toast.LENGTH_SHORT).show();
}
});
③ 監(jiān)聽(tīng)藍(lán)牙連接狀態(tài)
AndroidManifest權(quán)限設(shè)置:
<uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
可點(diǎn)擊此處查看Android權(quán)限設(shè)置
監(jiān)聽(tīng)代碼:
//注冊(cè)藍(lán)牙監(jiān)聽(tīng)
mContext.registerReceiver(mReceiver, makeFilter());
//注銷(xiāo)藍(lán)牙監(jiān)聽(tīng)
//mContext.unregisterReceiver(mReceiver);
private IntentFilter makeFilter() {
IntentFilter filter = new IntentFilter();
filter.addAction(BluetoothAdapter.ACTION_STATE_CHANGED);
return filter;
}
private BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
switch (intent.getAction()) {
case BluetoothAdapter.ACTION_STATE_CHANGED:
int blueState = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, 0);
switch (blueState) {
case BluetoothAdapter.STATE_TURNING_ON:
Log.e("TAG", "TURNING_ON");
break;
case BluetoothAdapter.STATE_ON:
bluetoothStatus="on";
Log.e("TAG", "STATE_ON");
break;
case BluetoothAdapter.STATE_TURNING_OFF:
Log.e("TAG", "STATE_TURNING_OFF");
break;
case BluetoothAdapter.STATE_OFF:
bluetoothStatus="off";
Log.e("TAG", "STATE_OFF");
break;
}
break;
}
}
};
附:完整實(shí)例代碼點(diǎn)擊此處本站下載。
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Android開(kāi)發(fā)入門(mén)與進(jìn)階教程》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android操作SQLite數(shù)據(jù)庫(kù)技巧總結(jié)》、《Android操作json格式數(shù)據(jù)技巧總結(jié)》、《Android數(shù)據(jù)庫(kù)操作技巧總結(jié)》、《Android文件操作技巧匯總》、《Android編程開(kāi)發(fā)之SD卡操作方法匯總》、《Android資源操作技巧匯總》及《Android控件用法總結(jié)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
- Android檢測(cè)IBeacon熱點(diǎn)的方法
- android獲取ibeacon列表的方法
- Android提高之BLE開(kāi)發(fā)Android手機(jī)搜索iBeacon基站
- android實(shí)現(xiàn)主動(dòng)連接和被動(dòng)連接的藍(lán)牙聊天功能
- Android 掃描附近的藍(lán)牙設(shè)備并連接藍(lán)牙音響的示例
- Android 藍(lán)牙連接 ESC/POS 熱敏打印機(jī)打印實(shí)例(ESC/POS指令篇)
- Android 藍(lán)牙連接 ESC/POS 熱敏打印機(jī)打印實(shí)例(藍(lán)牙連接篇)
- Android手機(jī)通過(guò)藍(lán)牙連接佳博打印機(jī)的實(shí)例代碼
- Android系統(tǒng)中的藍(lán)牙連接程序編寫(xiě)實(shí)例教程
- iBeacon使用藍(lán)牙連接范圍精確到1-3米
相關(guān)文章
Android動(dòng)畫(huà)之逐幀動(dòng)畫(huà)(Frame Animation)實(shí)例詳解
這篇文章主要介紹了Android動(dòng)畫(huà)之逐幀動(dòng)畫(huà)(Frame Animation),結(jié)合實(shí)例形式較為詳細(xì)的分析了逐幀動(dòng)畫(huà)的原理,注意事項(xiàng)與相關(guān)使用技巧,需要的朋友可以參考下2016-01-01
Android使用kotlin實(shí)現(xiàn)多行文本上下滾動(dòng)播放
這篇文章主要為大家詳細(xì)介紹了Android使用kotlin實(shí)現(xiàn)多行文本的上下滾動(dòng)播放,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
android實(shí)現(xiàn)音樂(lè)跳動(dòng)效果的示例代碼
這篇文章主要介紹了android實(shí)現(xiàn)音樂(lè)跳動(dòng)效果的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
Flutter實(shí)現(xiàn)編寫(xiě)富文本Text的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何通過(guò)Flutter實(shí)現(xiàn)編寫(xiě)富文本Text,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以參考一下2022-11-11
Kotlin文件讀寫(xiě)與SharedPreferences存儲(chǔ)功能實(shí)現(xiàn)方法
SharedPreferences是安卓平臺(tái)上一個(gè)輕量級(jí)的存儲(chǔ)類(lèi),用來(lái)保存應(yīng)用的一些常用配置,比如Activity狀態(tài),Activity暫停時(shí),將此activity的狀態(tài)保存到SharedPereferences中;當(dāng)Activity重載,系統(tǒng)回調(diào)方法onSaveInstanceState時(shí),再?gòu)腟haredPreferences中將值取出2022-12-12
Android框架Volley使用之Post請(qǐng)求實(shí)現(xiàn)方法
這篇文章主要介紹了Android框架Volley使用之Post請(qǐng)求實(shí)現(xiàn)方法,,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05
Android開(kāi)發(fā)簽名知識(shí)梳理總結(jié)
這篇文章主要介紹了Android開(kāi)發(fā)簽名知識(shí)梳理總結(jié),Android?系統(tǒng)要求所有?APK?必須先使用證書(shū)進(jìn)行數(shù)字簽名,然后才能安裝到設(shè)備上進(jìn)行更新2022-06-06
Android中Notification用法實(shí)例總結(jié)
這篇文章主要介紹了Android中Notification用法,以實(shí)例形式較為詳細(xì)的分析并總結(jié)了Notification的功能與使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10
java,Android:在eclipse中的快捷鍵(經(jīng)典收藏)
下面的快捷鍵是常用的,本人就本身喜好且常用的收拾一下,現(xiàn)在曬出來(lái)與大家分享,感興趣的朋友可以了解小哦2013-01-01

