// 獲得BluetoothAdapter對象
BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
int s = bluetoothAdapter.getState();
Log.d("藍牙狀態值:", String.valueOf(s)); // 12
一、藍牙開關狀態值:
(1)藍牙開啓:int STATE_ON,值爲12,藍牙模塊處於開啓狀態;
(2)藍牙開啓中:int STATE_TURNING_ON,值爲11,藍牙模塊正在打開;
(3)藍牙關閉:int STATE_OFF,值爲10,藍牙模塊處於關閉狀態;
(4)藍牙關閉中:int STATE_TURNING_OFF,值爲13,藍牙模塊正在關閉;
藍牙開關狀態順序:STATE_OFF --> STATE_TURNING_ON --> STATE_ON --> STATE_TURNING_OFF --> STATE_OFF。
二、藍牙掃描狀態值:
// 獲取藍牙掃描狀態值
int blueScanMode = bluetoothAdapter.getScanMode();
Log.d("藍牙掃描模式:", String.valueOf(blueScanMode)); // 21:查詢掃描失敗,頁面掃描有效
// 20:查詢掃描和頁面掃描都失敗
// 23:查詢掃描和頁面掃描都有效
查詢掃描功能:其它設備可以掃描到本設備,是指可見性;
頁面掃描功能:可以主動掃描其它設備;
(1)可見狀態:int SCAN_MODE_CONNECTABLE_DISCOVERABLE,值爲23,啓用查詢掃描和頁面掃描。
意味着該設備可被任何執行發現掃描的藍牙設備發現。
(2)掃描狀態:int SCAN_MODE_CONNECTABLE,值爲21,禁用查詢掃描,啓用頁面掃描,該狀態下藍牙模塊可以掃描其它設備,可見性:只對已配對的藍牙設備可見,只有配對設備才能主動連接本設備;
意味着先前連接並綁定本地設備的設備可以在發現過程中找到,但找不到新設備。
(3)無功能狀態:int SCAN_MODE_NONE,值爲20,查詢掃描和頁面掃描都失敗,該狀態下藍牙模塊既不能掃描其它設備,也不可見;
意味着可發現性被關閉,在發現過程中沒有一個遠程設備能夠找到本地藍牙設備。
三、藍牙相關權限:
<!--藍牙相關權限-->
<!--允許配對設備-->
<uses-permission android:name="android.permission.BLUETOOTH"/>
<!--允許發現設備-->
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<!--無交互的進行操作,API>=19添加-->
<uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED"/>
更多iOS、Android、Python、Java、MySQL的文章,請點擊:
http://blog.csdn.net/jamiecheung
http://blog.csdn.net/u010841622