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

React Native 0.66.4构建Android时react-native-onetrust-cmp配置异常求助

解决React Native 0.66.4 Android构建时依赖RN 0.71版本的问题

问题原因

你项目依赖的react-native-onetrust-cmp库,其Gradle配置里用com.facebook.react:react-native:+声明RN依赖——+会让Gradle自动拉取最新可用的RN版本(这里是0.71.0-rc.0),但你的项目实际用的是0.66.4,版本不匹配导致变体选择失败。同时RN 0.70+的Gradle模块属性和旧版本项目配置不兼容,进一步引发了这个问题。

解决方案

方案1:强制统一RN版本(推荐)

在项目根目录的android/build.gradle文件中,添加版本强制策略,让所有依赖都使用你项目的RN版本:

allprojects {
    repositories {
        // 保留原有仓库配置
    }
    configurations.all {
        resolutionStrategy {
            force 'com.facebook.react:react-native:0.66.4'
        }
    }
}

这样Gradle会忽略依赖库中+的版本声明,统一使用0.66.4。

方案2:降级react-native-onetrust-cmp到兼容版本

查看react-native-onetrust-cmp的版本历史,挑选明确支持RN 0.66.x的版本,修改package.json中的依赖版本:

"react-native-onetrust-cmp": "x.x.x" // 替换为兼容0.66.4的具体版本号

执行npm install或yarn install重新安装依赖。

方案3:手动修改依赖配置(临时方案)

如果找不到兼容版本,可临时修改该库的本地Gradle配置:

  1. 打开node_modules/react-native-onetrust-cmp/android/build.gradle
  2. 将implementation 'com.facebook.react:react-native:+'改为implementation 'com.facebook.react:react-native:0.66.4'
  3. 执行./gradlew clean后重新构建

若要永久保留修改,可配合patch-package工具:

  • 安装工具:npm install patch-package --save-dev
  • 修改完Gradle文件后执行:npx patch-package react-native-onetrust-cmp
  • 后续重新安装依赖时,补丁会自动生效

验证步骤

  1. 执行./gradlew clean清理构建缓存
  2. 重新运行./gradlew assembleDebug或通过Android Studio构建项目

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 11:21:00