RN≥0.60版本安装react-native-otp-verify后Android编译失败
解决React Native安装react-native-otp-verify后Android构建失败的方案
问题原因
构建失败是因为react-native-otp-verify依赖com.google.android.gms:play-services-auth:16.1.0,但项目中存在版本不一致或仓库配置缺失的问题,导致Gradle无法找到该依赖。
具体解决方案
1. 统一Google Play Services Auth版本
项目中同时定义了两个不同版本的play-services-auth:根build.gradle的ext块里指定了16.1.0,而app/build.gradle里硬编码了16.0.1,版本冲突会导致依赖解析失败。选择以下一种方式统一版本:
- 修改根
android/build.gradle:将ext中的googlePlayServicesVersion改为16.0.1,与app模块保持一致:buildscript { ext { // ...其他配置 googlePlayServicesVersion = "16.0.1" // ...其他配置 } } - 修改
android/app/build.gradle:将play-services-auth的依赖版本改为16.1.0,与根配置保持一致:dependencies { // ...其他依赖 implementation 'com.google.android.gms:play-services-auth:16.1.0' // ...其他依赖 }
2. 确保Google Maven仓库配置完整
Gradle需要从Google的Maven仓库拉取play-services-auth依赖,检查根android/build.gradle的allprojects.repositories块是否包含Google仓库,若缺失则添加:
allprojects { repositories { // 保留已有的仓库(如mavenCentral、jcenter等) google() // 等价于 maven { url 'https://maven.google.com' } } }
3. 清理缓存并重新构建
执行以下命令清理Gradle缓存,避免旧缓存导致的解析问题:
cd android ./gradlew clean cd .. npx react-native run-android
4. 升级react-native-otp-verify版本
如果上述方案无效,尝试升级react-native-otp-verify到最新版本,新版本可能已更新依赖配置,适配更高版本的Google Play Services或修复了依赖解析问题:
npm install react-native-otp-verify@latest --save # 或使用yarn yarn add react-native-otp-verify@latest
内容的提问来源于stack exchange,提问作者Leonardo Pinto Silva
相关产品推荐
相关产品推荐

