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

React Native Android集成AWS Amplify推送通知出现类重复报错

问题解决方法

根本原因

你遇到的重复类冲突是旧版AWS Amplify Push Notification模块依赖的过时Firebase组件,和项目中其他依赖引入的高版本Play Services/GMS组件存在同全限定名类导致的。

修复步骤

  1. 在引入aws-amplify_pushnotification模块时排除冲突依赖
    打开android/app/build.gradle文件,修改dependencies块中该模块的引入规则,排除过时的冲突组件:
dependencies {
    // 其他原有依赖保持不变
    implementation (project(':aws-amplify_pushnotification')) {
        // 排除冲突的firebase-jobdispatcher
        exclude group: 'com.firebase', module: 'firebase-jobdispatcher'
        // 排除冲突的旧版firebase-analytics-impl
        exclude group: 'com.google.firebase', module: 'firebase-analytics-impl'
    }
}
  1. 全局强制统一GMS/Firebase组件版本
    打开android/build.gradle文件,在allprojects块下添加版本统一规则,对齐你项目中已有的高版本组件:
allprojects {
    repositories {
        // 原有仓库配置保持不变
    }
    configurations.all {
        resolutionStrategy {
            // 版本和你报错日志中出现的高版本保持一致即可
            force "com.google.android.gms:play-services-gcm:16.1.0"
            force "com.google.android.gms:play-services-measurement:19.0.0"
            force "com.google.android.gms:play-services-measurement-impl:19.0.0"
        }
    }
}
  1. 清理缓存重新构建
    依次执行以下命令清理残留缓存,避免旧构建产物影响:
  • 进入android目录执行清理:cd android && ./gradlew clean
  • 回到项目根目录重启Metro并重置缓存:npx react-native start --reset-cache
  • 新开终端执行构建命令:npx react-native run-android

可选终极方案

如果以上操作后仍有冲突,直接升级AWS Amplify Push Notification到最新稳定版,新版已完全移除过时的firebase-jobdispatcher依赖,改用Jetpack WorkManager实现任务调度,不会再出现这类依赖冲突问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 12:24:05