问题:在Android 12及以上版本中,蓝牙扫描需要哪些额外权限配置?
答案:
在Android 12及以上版本中,蓝牙扫描需要额外配置以下权限:
1. **`BLUETOOTH_SCAN`**:用于执行蓝牙扫描(包括经典蓝牙和低功耗蓝牙)。
2. **`BLUETOOTH_CONNECT`**:用于与蓝牙设备建立连接(如果扫描后需要连接)。
3. **`ACCESS_FINE_LOCATION`** 或 **`ACCESS_COARSE_LOCATION`**:在Android 12之前,位置权限是必须的;但在Android 12及以上,如果应用仅使用蓝牙扫描而不获取位置信息,可以通过声明 `android:usesPermissionFlags="neverForLocation"` 来免除位置权限。不过,若扫描结果用于推断位置,则仍需位置权限。
此外,还需要在运行时动态请求这些权限(`BLUETOOTH_SCAN` 和 `BLUETOOTH_CONNECT` 属于危险权限),并在 `AndroidManifest.xml` 中声明。
(注:以上信息基于通用Android开发文档,参考资料中未直接提及Android权限配置,因此补充了标准知识。)
> 答案参考了知识库中的相关资料。
[hr]本问答由 AI 基于知识库自动生成,仅供参考。