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

Flutter集成google_mobile_ads 0.12.1+1时应用崩溃报无效应用ID

Flutter集成Google移动广告启动崩溃问题排查与解决方案

核心崩溃原因

日志明确显示,崩溃触发链路为应用启动阶段,Google广告SDK的MobileAdsInitProvider组件执行初始化时,检测到Manifest中配置的广告应用ID不符合规范,直接抛出强校验异常IllegalStateException,终止应用启动流程。

分步解决操作

  • 修正广告应用ID的配置取值
    • 检查AndroidManifest.xml中com.google.android.gms.ads.APPLICATION_ID对应的元数据值,绝对不能保留模板占位符的尖括号格式,不能直接把示例里的<AD-CODE>当成真实配置值填入
    • 合法的广告应用ID格式为ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy,注意两段数字之间的分隔符是波浪号~,不是斜杠、竖线等其他符号,填写时避免漏写、错写数字
    • 开发调试阶段可直接替换为Google官方提供的测试应用ID完成校验,测试ID值为ca-app-pub-3940256099942544~3347511713,该配置可直接通过SDK校验,能快速定位是否为ID取值错误导致的崩溃
  • 确认配置节点的正确放置位置
    • 该meta-data节点必须直接放在<application>标签的直接子级,不能嵌套在<activity>、<provider>、<service>等其他组件节点内部,否则SDK会读取不到对应配置
  • 排查Manifest合并冲突
    • 确认配置写入的是主模块路径下android/app/src/main/AndroidManifest.xml文件,不要错写到其他构建变体的Manifest文件中,避免主构建流程加载时读取不到配置
    • 检查Manifest合并规则,确认没有其他依赖项的同名meta-data配置覆盖了广告应用ID的取值
  • 清除构建缓存重新编译
    完成配置修改后执行flutter clean命令清理全量构建缓存,重新编译安装应用,避免旧构建产物中残留的错误Manifest配置覆盖新配置,导致校验逻辑仍读取到旧的无效ID

版本兼容提示:当前使用的google_mobile_ads: ^0.12.1+1版本,底层依赖的Google Play广告服务库版本为19.7.0,该版本对广告应用ID的校验为强阻塞逻辑,不存在容错提示,只要检测到ID无效、缺失、格式错误,就会在启动阶段直接触发应用崩溃。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.22 10:06:05