应用位置权限政策合规求助:Bundle版本7仍遭谷歌拒审
Android应用谷歌拒审:位置权限政策合规问题(Bundle版本7)
我已耗时一月处理应用位置权限政策合规问题,但Bundle版本7仍因此被谷歌拒审。
谷歌拒审回复:
- (Bundle版本:7)不符合位置权限政策,或无法审核验证应用内体验的合规性;
- 功能不具备后台位置访问资格,根据声明判定应用可使用前台位置访问替代后台位置访问实现功能,建议移除后台位置访问权限并改用前台位置访问,如需帮助可查看开发者文档。
我已在Android Manifest XML中尝试移除后台位置权限,代码如下:
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.CAMERA"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" /> <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" /> <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" tools:node="remove" /> <uses-feature android:name="android.hardware.camera" android:required="false"/> <uses-feature android:name="android.hardware.camera.front" android:required="false"/> <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission android:name="android.permission.VIBRATE" />
现寻求解决该合规问题的技术方案。
技术解决方案步骤:
彻底排查后台位置权限残留
- 检查依赖库:第三方SDK(如地图、统计、定位服务)可能隐式申请
ACCESS_BACKGROUND_LOCATION,用./gradlew app:dependencies查看依赖树,定位到可疑SDK后,在Manifest中同样添加tools:node="remove",或者升级SDK到移除该权限的版本。 - 验证最终打包Manifest:通过Build -> Analyze APK查看打包后的Manifest文件,确认
ACCESS_BACKGROUND_LOCATION已完全移除,避免构建缓存或变体配置导致的残留。
- 检查依赖库:第三方SDK(如地图、统计、定位服务)可能隐式申请
修正位置权限使用逻辑
- 删除所有后台定位代码:移除
WorkManager、后台Service、广播接收器中调用定位API的逻辑,确保仅在应用前台(可见Activity或前台Service运行时)获取位置。 - 调整权限申请时机:仅在用户触发需要位置的功能时,才申请
ACCESS_FINE_LOCATION(或ACCESS_COARSE_LOCATION),申请时明确弹窗告知用户用途,不要提前预申请。
- 删除所有后台定位代码:移除
完善合规材料与声明
- 更新谷歌Play控制台位置权限声明:明确说明仅使用前台位置,用途严格匹配政策允许的场景(如本地服务查找、导航等),完全删除任何后台位置相关描述。
- 提交应用内体验录屏:录制用户触发位置功能的完整流程,展示仅在前台获取位置、无后台定位行为的操作过程,帮助审核人员快速验证合规性。
清理缓存并重新打包
- 执行
./gradlew clean清理构建缓存,避免旧配置残留。 - 生成新Bundle包后,在谷歌Play控制台上传时备注已完成的所有修改点,便于审核人员针对性核查。
- 执行
内容的提问来源于stack exchange,提问作者DevGe
相关产品推荐
相关产品推荐

