我正在为一个应用程序工作,该应用程序使用BLE技术进行配对和IOT设备,并使用精确定位来执行一些与应用程序要求相关的特定任务
现在,在Android 12一些设备(我在三星SM-M21测试)它结束了错误
location permission missing (code 3)
而在另一个设备,如Realme,Mi,它的工作正常的预期
参考文章https://developer.android.com/guide/topics/connectivity/bluetooth/permissions后
我已经在清单中添加了这些权限
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission
android:name="android.permission.BLUETOOTH"
android:maxSdkVersion="30" />
<uses-permission
android:name="android.permission.BLUETOOTH_ADMIN"
android:maxSdkVersion="30" />
<uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
我已在运行时向用户请求权限
如果需要更多的信息,请告诉我,我将相应地更新问题。
1条答案
按热度按时间x8goxv8g1#
我把这个加到清单里解决了
并在代码级别添加了一个条件,仅为Android 12及以上版本添加额外的权限运行时
注:其他权限也按正常要求执行