我想檢查是否在任何Android設備上定期啓用藍牙。有沒有我可以用BroadcastReceiver來捕捉的意圖,還是有其他方法可以做到這一點?如何檢查藍牙是否以編程方式啓用?
回答
你去那裏:
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
if (mBluetoothAdapter == null) {
// Device does not support Bluetooth
} else {
if (!mBluetoothAdapter.isEnabled()) {
// Bluetooth is not enable :)
}
}
隨着uses-permission
<uses-permission android:name="android.permission.BLUETOOTH" android:required="false" />
感謝您的簡短答覆! – androidnoob
如果需要藍牙許可才能進行此檢測,請不要忘記將其設置爲不需要:
最佳方式http: //stackoverflow.com/a/21010026/2624806 :) – CoDe
在這裏,我有其他的選擇,因爲這個問題的答案。
首先在您的Manifest文件中添加以下行。
<uses-feature android:name="android.hardware.BLUETOOTH" android:required="false"/>
現在,您要檢查藍牙支持能力的位置,請使用以下代碼。
boolean isBluetoothSupported = getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH);
使用可以使用
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
用於檢查BT連接
mBluetoothAdapter.getProfileConnectionState(BluetoothHeadset.HEADSET) == BluetoothHeadset.STATE_CONNECTED
用於檢查BT斷開
mBluetoothAdapter.getProfileConnectionState(BluetoothHeadset.HEADSET) == BluetoothHeadset.STATE_DISCONNECTED
問題不在於檢查是否連接了耳機,但是我正在查找這個,所以+1和謝謝:) – Alexandr
要檢查藍牙狀態,ON或OFF,編程:
BluetoothAdapter btAdapter = ((Build.VERSION.SDK_INT > Build.VERSION_CODES.JELLY_BEAN_MR1)
?((BluetoothManager)mContext.getSystemService(Context.BLUETOOTH_SERVICE)).getAdapter()
:(BluetoothAdapter.getDefaultAdapter()));
if(btAdapter==null){
return;
}
if(btAdapter.getState()==BluetoothAdapter.STATE_ON){
//Bluetooth is ON
}
您還可以收聽意圖的行動:
BluetoothAdapter.ACTION_STATE_CHANGED
這是我如何與@ xjaphx的答案的幫助下做到了,稍作簡化版本:
private boolean getBlueToothOn(){
BluetoothAdapter btAdapter = BluetoothAdapter.getDefaultAdapter();
return btAdapter != null && btAdapter.isEnabled();
}
<uses-permission android:name="android.permission.BLUETOOTH" />
public boolean isBluetoothEnabled()
{
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
return mBluetoothAdapter.isEnabled();
}
在manifest文件權限:藍牙
<uses-permission android:name="android.permission.BLUETOOTH" />
- 1. 以編程方式檢查是否在WindowsCE 5.0上激活藍牙設備
- 2. iOS以編程方式檢查Mac上的藍牙是否已連接
- 3. 以編程方式啓用/禁用藍牙配置文件
- 4. 以編程方式啓用藍牙HCI日誌
- 5. 以編程方式啓用Wi-Fi和藍牙
- 6. 以編程方式打開藍牙
- 7. 以編程方式檢查在Windows上是否啓用了IPv6
- 8. 以編程方式檢查iPhone是否已啓用GPS
- 9. 如何以編程方式檢查Android中藍牙設備的連接狀態?
- 10. Bluecove:以編程方式重新啓動藍牙堆棧
- 11. 如何以編程方式檢查是否安裝使用Java
- 12. Mockito測試檢查是否啓用藍牙
- 13. 如何以編程方式配對藍牙設備在Android
- 14. 如何以編程方式獲取iPhone的藍牙MAC地址?
- 15. 如何以編程方式確定藍牙主/從角色?
- 16. 如何以編程方式在WM中「通過藍牙連接」?
- 17. 是否可以在Android上以編程方式啓用/禁用藍牙網絡共享?
- 18. 如何以編程方式檢查EC2實例是否完成重新啓動?
- 19. 如何以編程方式檢查MP4是否損壞?
- 20. 如何以編程方式檢查鍵盤是否連接?
- 21. 如何以編程方式檢查Zookeeper是否正在運行
- 22. 如何以編程方式檢查Zookeeper是否正在運行?
- 23. android檢查藍牙是否開啓/關閉
- 24. Android - 以編程方式啓用和禁用藍牙 - SDK 3(OS 1.5)?
- 25. React native - 以編程方式檢查是否啓用了遠程JS調試
- 26. 是否可以通過編程方式爲藍牙配對設置引腳?
- 27. 是否有可能以編程方式與藍牙設備配對?
- 28. Mac OS X /藍牙:以編程方式禁用簡單配對?
- 29. 在iOS中以編程方式禁用藍牙硬件?
- 30. 使用藍牙以編程方式傳輸數據Android Android
只是檢查出這個[鏈接](http://developer.android.com/guide/topics/wireless/bluetooth.html#SettingUp),並遵守所有的步。我希望這個幫助。 – Uttam