添加Firebase后构建Flutter APK出现Gradle版本冲突错误求助
解决Flutter集成Firebase Cloud Messaging时的Gradle版本冲突问题
别担心,我来帮你一步步搞定这个Gradle版本冲突的问题,哪怕你不熟悉Gradle也能轻松操作:
问题原因
你遇到的错误是因为多个依赖库对com.google.firebase:firebase-iid的版本要求不一致——有些库需要16.0.0版本,但Gradle当前解析到的是15.1.0,导致版本冲突无法正常构建。
解决方案步骤
1. 升级项目级Google服务插件版本
打开项目根目录下的build.gradle文件,找到buildscript中的Google服务插件依赖,把版本从4.0.0升级到更兼容的4.3.15:
buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.0.1' classpath 'com.google.gms:google-services:4.3.15' // 替换为这个版本 } }
2. 强制指定firebase-iid的版本
打开app/build.gradle文件,在dependencies代码块中添加一行,强制Gradle使用16.0.0版本的firebase-iid:
dependencies { testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.1' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1' implementation 'com.google.firebase:firebase-messaging:17.0.0' implementation 'com.google.firebase:firebase-iid:16.0.0' // 添加这一行,统一版本 }
3. 清理缓存并重新构建
执行以下命令清理Gradle缓存(如果用Android Studio,也可以点击File -> Invalidate Caches / Restart来完成):
./gradlew clean ./gradlew build
这样操作后,Gradle就会统一使用16.0.0版本的firebase-iid,解决版本冲突问题,你应该就能正常构建APK了。
内容的提问来源于stack exchange,提问作者leodriesch
相关产品推荐
相关产品推荐

