Android R 11 后台定位权限没有 始终允许选项的解决方法

bt365开户 📅 2025-09-20 12:46:43 ✍️ admin 👁️ 2830 ❤️ 84
Android R 11 后台定位权限没有 始终允许选项的解决方法

在接入百度定位SDK 时,看到文档上说要注意android 11的权限相关问题,果然是个坑,在Android 10 11 上都出现一些问题,本文记录解决 android 11 定位权限问题的方法

申请不了后台定位

android 11 有不同的定位策略,前台权限和后台权限:

这里有2种场景,第一种情况是当仅请求前台权限,在这种情况下,我们通常使用ACCESS_FINE_LOCATION 或者ACCESS_COARSE_LOCATION, 但是,请求授权的弹窗和以前的略有不同,在Android 11 中,Google 增加了一个可选项 允许本次

请注意,即使将ACCESS_BACKGROUND_LOCATION添加到要请求的权限列表中,系统也将忽略它。

第二种情况是:应用也需要后台权限,为此,你必须准备自己的对话框,并使用明确的消息来说明后台位置的使用。

当用户同意后,将他引导到应用设置页面,那里可以选择他想授予的权限等级。

显然问题是出现在了后台权限上

去系统设置页检查权限的时候:

这是我的DEMO:

这是高德地图:

可以看到,高德地图比我的DEMO 多了一个始终允许。

解决方法

第一步: ManiFest.xml 中声明后台定位权限!!!

第二步:java 代码请求后台定位权限

if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.R)

requestPermission.launch(Manifest.permission.ACCESS_BACKGROUND_LOCATION);

// 注意,不会有系统弹框,需要我们自己写代码,让用户跳转到设置页面去选择

此时就会有 始终允许 的选项了!

相关创意

检测窃听设备装置的仪器有哪些?反窃听检测设备保护你的隐私安全
iQOO和iQOO Pro哪款好 iQOO和iQOO Pro区别对比
[世界杯]16强诞生 俄罗斯世界杯迈入新赛程
vue 为什么以index命名
DNF4月26日公告大动作:纳波尔团本通关条件全面变更!来源: 用户投稿2025-04-23 12:00:0027人浏览
橱窗产品管理在哪里?不同平台、功能及管理要点全知道
第五代智能英特尔® 酷睿™ M 处理器
商标注册流程
光绪帝为什么无后?因其患遗精病20年无精可泄?