我正在使用BluetoothGatt
连接到BLE设备的应用程序上工作。
我能够成功扫描并连接所有设备(例如Samsung,Pixel等)中的BLE设备。我遵循Android official BLE connection指南进行扫描和连接。
但是将Pixel 2
更新为Android 10
之后,我无法将BLE设备连接到Pixel2。我也看到Google issue tracker中报告了相同的问题。
要解决此问题,我尝试清除了蓝牙应用程序缓存和网络重置,但它在某些设备上有效,但并非在所有设备上均可。
是否需要采取任何措施来解决此问题,或者是否有适当的方法以编程方式清除Bluetooth应用程序缓存和网络重置。
或通过其他任何方式在Android中管理BLE连接?
答案 0 :(得分:1)
在Android 10(API 29)上,权限已更改,如果它是您的编译目标,则现在需要ACCESS_FINE_LOCATION进行BLE扫描。
但是,如果您已经针对API 28进行了编译,并且具有ACCESS_COARSE_LOCATION,那么它应该可以继续在Android 10上运行。
Src: https://developer.android.com/about/versions/10/privacy/changes#location-telephony-bluetooth-wifi
请参阅以下内容,因为此问题可能是重复的: Android 10 not working with BLE Bluetooth scanning