Android開發(fā)實現(xiàn)實時檢測藍(lán)牙連接狀態(tài)的方法【附源碼下載】
本文實例講述了Android開發(fā)實現(xiàn)實時檢測藍(lán)牙連接狀態(tài)的方法。分享給大家供大家參考,具體如下:
本程序能實時監(jiān)聽并檢測Android藍(lán)牙的連接狀態(tài),無論是通過界面上的switch按鈕打開/關(guān)閉手機(jī)藍(lán)牙,還是手動打開/關(guān)閉手機(jī)藍(lán)牙,程序都能監(jiān)聽當(dāng)前的狀態(tài)。
一、軟件界面
二、程序?qū)崿F(xiàn)
① switch開關(guān)—-打開/關(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();//打開藍(lán)牙 } else { mBluetoothAdapter.disable();// 關(guān)閉藍(lán)牙 } } });
② 查看藍(lán)牙狀態(tài)監(jiān)聽
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)聽藍(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)聽代碼:
//注冊藍(lán)牙監(jiān)聽 mContext.registerReceiver(mReceiver, makeFilter()); //注銷藍(lán)牙監(jiān)聽 //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; } } };
附:完整實例代碼點(diǎn)擊此處本站下載。
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進(jìn)階教程》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android操作SQLite數(shù)據(jù)庫技巧總結(jié)》、《Android操作json格式數(shù)據(jù)技巧總結(jié)》、《Android數(shù)據(jù)庫操作技巧總結(jié)》、《Android文件操作技巧匯總》、《Android編程開發(fā)之SD卡操作方法匯總》、《Android資源操作技巧匯總》及《Android控件用法總結(jié)》
希望本文所述對大家Android程序設(shè)計有所幫助。
- Android檢測IBeacon熱點(diǎn)的方法
- android獲取ibeacon列表的方法
- Android提高之BLE開發(fā)Android手機(jī)搜索iBeacon基站
- android實現(xiàn)主動連接和被動連接的藍(lán)牙聊天功能
- Android 掃描附近的藍(lán)牙設(shè)備并連接藍(lán)牙音響的示例
- Android 藍(lán)牙連接 ESC/POS 熱敏打印機(jī)打印實例(ESC/POS指令篇)
- Android 藍(lán)牙連接 ESC/POS 熱敏打印機(jī)打印實例(藍(lán)牙連接篇)
- Android手機(jī)通過藍(lán)牙連接佳博打印機(jī)的實例代碼
- Android系統(tǒng)中的藍(lán)牙連接程序編寫實例教程
- iBeacon使用藍(lán)牙連接范圍精確到1-3米
相關(guān)文章
Android動畫之逐幀動畫(Frame Animation)實例詳解
這篇文章主要介紹了Android動畫之逐幀動畫(Frame Animation),結(jié)合實例形式較為詳細(xì)的分析了逐幀動畫的原理,注意事項與相關(guān)使用技巧,需要的朋友可以參考下2016-01-01Android使用kotlin實現(xiàn)多行文本上下滾動播放
這篇文章主要為大家詳細(xì)介紹了Android使用kotlin實現(xiàn)多行文本的上下滾動播放,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01Kotlin文件讀寫與SharedPreferences存儲功能實現(xiàn)方法
SharedPreferences是安卓平臺上一個輕量級的存儲類,用來保存應(yīng)用的一些常用配置,比如Activity狀態(tài),Activity暫停時,將此activity的狀態(tài)保存到SharedPereferences中;當(dāng)Activity重載,系統(tǒng)回調(diào)方法onSaveInstanceState時,再從SharedPreferences中將值取出2022-12-12Android框架Volley使用之Post請求實現(xiàn)方法
這篇文章主要介紹了Android框架Volley使用之Post請求實現(xiàn)方法,,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-05-05Android中Notification用法實例總結(jié)
這篇文章主要介紹了Android中Notification用法,以實例形式較為詳細(xì)的分析并總結(jié)了Notification的功能與使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10java,Android:在eclipse中的快捷鍵(經(jīng)典收藏)
下面的快捷鍵是常用的,本人就本身喜好且常用的收拾一下,現(xiàn)在曬出來與大家分享,感興趣的朋友可以了解小哦2013-01-01