顯然Android 5.0和更高版本已經搞亂了藍牙LE的使用,我需要爲它創建解決方法。
我注意到,連接到發現設備的時間很長。
但是,如果藍牙服務關閉然後打開,它通常會更快地連接。Android藍牙在關閉時關閉
我正在使用的應用程序需要在Android 4.3及更高版本上運行。
通常我只是推出BluetoothGatt.connect(),一切都很好。
但是在Android 5.0及更高版本中,Connect()會啓動,但在最終確定操作之前會保持很長時間。
考慮到這一點,我把一個Handler()。postDelayed()例程與10秒超時,以查看'看'如果連接已成功完成。
如果連接尚未完成我想以編程方式完全關閉手機的藍牙服務,然後再次打開它。
但是,當我試圖執行BluetoothAdapter.disable()該應用程序崩潰。
我只能猜測這是因爲BluetoothGatt.connect()活動仍在嘗試在後臺完成(通過BluetoothLEService)。
我可以手動關閉手機的藍牙服務,無論其「條件」,它的工作原理。
所以,我怎麼能編程關閉手機的藍牙服務,而一個連接()嘗試仍試圖執行 - 基本上關閉即時
您的建議/建議將不勝感激。
謝謝