Firebase库版本冲突致应用无法运行,编译报错找不到zzbgl类
解决Firebase Firestore 15.0.0编译报错:cannot access zzbgl类找不到的问题
这个问题我之前帮好几个开发者排查过,本质是Firebase库与Google Play Services相关依赖/插件版本不兼容导致的,下面给你一步步的解决方法:
第一步:更新根目录build.gradle的google-services插件版本
15.0.0版本的Firebase库需要适配的google-services插件版本至少是3.3.0以上,建议直接更新到兼容的稳定版,比如:buildscript { dependencies { // 替换成这个版本,适配Firebase 15.x系列 classpath 'com.google.gms:google-services:4.0.1' } }第二步:确保所有Firebase/Google Play Services依赖版本统一
不要混合不同版本的Firebase或Google Play Services库,比如如果你还用到了firebase-auth、play-services-analytics等,都要统一使用15.0.0版本,用你定义的$firebase_version变量来管理最稳妥,避免手动输入出错。第三步:清理并重建项目
版本更新后缓存可能残留旧的编译文件,执行以下操作:- 在Android Studio中点击
Build -> Clean Project - 再点击
Build -> Rebuild Project
或者用命令行:
./gradlew clean ./gradlew assembleDebug- 在Android Studio中点击
第四步:排查第三方库的依赖冲突
如果上面几步都没用,很可能是某个第三方库依赖了旧版本的Google Play Services,这时候需要排除冲突的依赖。比如某个第三方库some-lib导致冲突,可以这样写:implementation('com.example:some-lib:1.0.0') { exclude group: 'com.google.android.gms' }
为什么会出现这个错误?
Firebase Firestore 15.0.0内部依赖了Google Play Services的一些内部类(比如zzbgl),如果你的插件版本太旧,或者其他依赖的库版本不匹配,编译时就找不到这些对应的内部类文件,从而抛出这个错误。
内容的提问来源于stack exchange,提问作者pulse1989
相关产品推荐
相关产品推荐

