已添加com.google.android.gms.permission.AD_ID权限仍报错求助
解决Play Console广告权限检测不通过的问题
可能的原因及修复步骤
检查权限是否被Manifest合并规则移除
第三方依赖(如广告SDK、分析库)可能通过Manifest合并工具自动移除或覆盖权限。你可以通过生成合并后的Manifest文件验证:- 在Android Studio中打开app模块,点击菜单栏
Build > Analyze APK,选择上传到Play Console的APK/AAB文件 - 在APK分析器中展开
AndroidManifest.xml,搜索目标权限是否存在
若权限被移除,需在声明中添加tools:node="merge"强制保留,记得先在Manifest根标签引入tools命名空间:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"> <uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="merge" /> <uses-permission android:name="android.permission.ACCESS_ADSERVICES_AD_ID" tools:node="merge" /> </manifest>- 在Android Studio中打开app模块,点击菜单栏
确认活跃工件为最新构建版本
Play Console显示的活跃工件可能不是你添加权限后的版本:- 进入Play Console「发布 > 应用版本」页面
- 确认当前推广的生产/测试版本,是添加权限后重新构建的APK/AAB
- 若版本不符,重新上传正确工件并完成推广流程
检查多构建变体的Manifest配置
如果你使用debug/release或渠道包等多构建变体,可能仅在某个变体的Manifest中添加了权限,但上传的是未配置的变体。确保所有需上传到Play Console的构建变体,都包含这两个权限声明。升级广告SDK至适配Android 13的版本
旧版广告SDK可能无法正确识别Android 13的权限规则,比如Google Mobile Ads SDK需升级到21.0.0及以上版本,确保SDK能正常请求广告ID权限。清理构建缓存后重新打包
旧构建缓存可能导致Manifest未正确合并:- 点击Android Studio菜单栏
Build > Clean Project - 执行
Build > Rebuild Project - 重新生成APK/AAB后上传至Play Console
- 点击Android Studio菜单栏
内容的提问来源于stack exchange,提问作者BK Vishwakarma
相关产品推荐
相关产品推荐

