Flutter升级后Google Sign in Button触发FATAL异常求助
解决Flutter升级后Google登录触发
NoClassDefFoundError的问题 这个错误核心是AndroidX依赖版本不匹配或缺失导致的,以下是几个直接有效的修复方案:
1. 强制统一AndroidX Activity依赖版本
在项目的android/build.gradle文件中添加强制依赖配置,确保所有库使用一致的AndroidX Activity版本:
subprojects { project.configurations.all { resolutionStrategy { force 'androidx.activity:activity:1.8.0' force 'androidx.activity:activity-ktx:1.8.0' } } }
可根据当前Flutter版本调整Activity版本(Flutter 3.16+推荐1.8.0及以上稳定版)
2. 更新Firebase相关依赖
在pubspec.yaml中确保firebase_auth、google_sign_in为最新稳定版,执行命令更新:
flutter pub upgrade firebase_auth google_sign_in
3. 清理并重建项目
执行以下命令清除缓存并重新构建,解决缓存导致的依赖冲突:
flutter clean flutter pub get cd android ./gradlew clean ./gradlew build --no-build-cache cd .. flutter run
4. 匹配Android Gradle插件与Gradle版本
打开android/build.gradle,确保插件版本和Gradle版本对应:
- 例如Flutter 3.10+建议使用
com.android.tools.build:gradle:7.4.2,对应Gradle 7.5版本(在android/gradle/wrapper/gradle-wrapper.properties中修改distributionUrl)
5. 确认AndroidX启用状态
检查android/gradle.properties中是否存在以下配置,缺失则添加:
android.useAndroidX=true android.enableJetifier=true
内容的提问来源于stack exchange,提问作者Simon Hearn
相关产品推荐
相关产品推荐

