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

Flutter 3.03最新版集成AdMob SDK后应用崩溃无法正常使用

Flutter 3.03 版本AdMob接入崩溃问题汇总

这个问题在3.03版本发布初期有大量开发者复现。admob_flutter已经停更超过1年,完全不兼容Flutter 3.x系列版本,直接弃用即可,只需要针对官方维护的google_mobile_ads做配置排查:

必查基础配置(90%的崩溃来自这部分)

  • Android端
    1. 打开android/app/build.gradle,将minSdkVersion设为21及以上,compileSdkVersion设为33。Flutter 3.03默认初始化的项目minSdk为19,不满足AdMob SDK最低系统要求,会直接触发native层加载崩溃
    2. google_mobile_ads不要使用3.0.0以上版本,该区间版本和Flutter 3.03内置的AndroidX、Kotlin依赖存在版本冲突,直接锁定版本为google_mobile_ads: ^2.4.0
    3. 在AndroidManifest.xml的<application>标签内添加AdMob应用ID配置,漏加会直接触发初始化崩溃:
    <meta-data
        android:name="com.google.android.gms.ads.APPLICATION_ID"
        android:value="替换为自己的AdMob应用ID"/>
    
  • iOS端
    1. 打开ios/Podfile,将全局平台版本设置为platform :ios, '12.0',执行pod deintegrate && pod install --repo-update重新拉取依赖,解决Swift版本不兼容问题
    2. 在Info.plist中添加GADApplicationIdentifier字段,值填写对应AdMob应用ID,同时补充NSUserTrackingUsageDescription权限描述,iOS14及以上系统缺失该配置会直接触发崩溃
  • 打包配置
    如果Debug包正常、Release包崩溃,检查是否开启了代码混淆,需要在混淆规则文件中添加AdMob相关类的keep规则,避免核心类被混淆导致广告加载失败崩溃。

剩余异常排查

以上配置全部调整后仍崩溃的,直接过滤控制台的FATAL EXCEPTION日志,绝大多数剩余问题都是GMS服务版本、其他第三方插件和AdMob的依赖冲突导致,手动在build.gradle中锁定冲突依赖的版本即可解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 22:48:17