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

升级Expo 51后构建AAB时AdMob编译错误求助

解决Expo 51构建AAB时react-native-google-mobile-ads的Kotlin编译错误

以下是几种可行的修复方案,按优先级尝试:

  • 检查依赖版本兼容性
    Expo 51对应React Native 0.74.x,react-native-google-mobile-ads版本必须适配这个RN版本。直接升级到最新稳定版:

    npm install react-native-google-mobile-ads@latest --save
    

    升级后记得重新生成原生目录(裸工作流)或执行预构建:npx expo prebuild --clean

  • 同步Kotlin版本
    Expo 51默认的Kotlin版本可能和广告依赖不匹配,修改android/build.gradle里的Kotlin版本为1.9.20及以上:

    buildscript {
      ext {
        kotlinVersion = "1.9.20"
      }
      // 其他原有配置保持不变
    }
    
  • 彻底清理构建缓存
    仅清理npm缓存不够,还需清理Gradle缓存:

    cd android
    ./gradlew clean
    ./gradlew build --refresh-dependencies
    cd ..
    npx expo start --clear
    
  • 检查Android SDK配置
    确认android/build.gradle里的SDK版本和Expo 51要求一致:

    buildscript {
      ext {
        compileSdkVersion = 34
        targetSdkVersion = 34
        buildToolsVersion = "34.0.0"
      }
    }
    

    同时确保本地Android SDK已安装API 34及对应构建工具。

  • 获取详细错误日志定位问题
    执行构建时添加--info参数拿到完整编译日志,明确具体报错的Kotlin代码或依赖问题:

    eas build --platform android --profile production --info
    

    根据日志里的具体提示(比如语法不兼容、依赖类重复)针对性修复。

  • 排除冲突依赖
    如果是依赖冲突导致的,在android/app/build.gradle里排除冲突模块:

    implementation('com.google.android.gms:play-services-ads') {
      exclude group: 'com.android.support'
    }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 14:04:58