You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Firebase Messaging的无广告应用如何消除日志中的ad_id警告?

解决Firebase Messaging应用的AD_ID权限警告问题

核心原因

这个警告通常是项目间接引入了依赖AD_ID权限的第三方库(比如Firebase Analytics、Google Ads相关组件)导致的——即使你没主动集成广告功能,这些依赖也会在Manifest合并阶段添加AD_ID权限请求,触发日志警告。

具体解决步骤

1. 定位引入AD_ID权限的依赖

先找出是哪个库在偷偷添加权限:

  • 在Android Studio中打开Gradle工具窗口,找到你的app模块,执行Tasks > android > dependencies查看完整依赖树;
  • 或在终端运行命令:
    ./gradlew app:dependencies
    
    搜索com.google.android.gms.permission.AD_ID,定位到对应的依赖库(常见为firebase-analytics或play-services-ads系列组件)。

2. 排除不必要的依赖

根据定位结果,在app的build.gradle中排除相关依赖:

  • 如果是Firebase Analytics导致的:

    implementation 'com.google.firebase:firebase-messaging:你的版本号' {
        exclude group: 'com.google.firebase', module: 'firebase-analytics'
        exclude group: 'com.google.firebase', module: 'firebase-analytics-ktx' // Kotlin项目需加这行
    }
    

    Firebase Messaging的核心推送功能不需要依赖Analytics,排除后不会影响正常使用。

  • 如果是Google Ads相关组件导致的:

    configurations.all {
        exclude group: 'com.google.android.gms', module: 'play-services-ads'
        exclude group: 'com.google.android.gms', module: 'play-services-ads-identifier'
    }
    

3. 加强Manifest配置

确保Manifest的配置完全禁用ADID收集:

  • 先确认Manifest根标签包含tools命名空间:
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools">
    
  • 添加权限移除和禁用配置:
    <!-- 强制移除AD_ID权限 -->
    <uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove" />
    
    <application ...>
        <!-- 禁用Firebase Analytics的ADID收集 -->
        <meta-data
            android:name="google_analytics_adid_collection_enabled"
            android:value="false" />
        <!-- 声明非广告应用,避免Ads SDK触发权限检查 -->
        <meta-data
            android:name="com.google.android.gms.ads.AD_MANAGER_APP"
            android:value="false" />
    </application>
    

4. 清理缓存并重建项目

执行以下命令清理Gradle缓存,再重新构建项目:

./gradlew clean
./gradlew assembleDebug

验证效果

重新运行应用,查看Logcat,确认Package X failed Ad Id permission check的警告不再出现。


内容的提问来源于stack exchange,提问作者Mathias

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 04:00:13