Flutter项目Android Gradle Plugin无法切换至8.3.0问题求助
解决Flutter安卓应用AGP版本不匹配构建失败问题
1. 确认Gradle版本与AGP兼容
AGP 8.3.0必须搭配Gradle 8.4及以上版本,检查android/gradle/wrapper/gradle-wrapper.properties文件:
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-all.zip
若当前Gradle版本低于8.4,直接修改后保存。
2. 强制子项目统一使用指定AGP版本
部分Flutter插件会自带旧版AGP配置,导致子项目(如android_intent_plus)不继承根项目的AGP版本。在根目录build.gradle中添加以下配置,强制所有安卓子项目同步根项目的编译配置:
subprojects { afterEvaluate { project -> if (project.plugins.hasPlugin('com.android.application') || project.plugins.hasPlugin('com.android.library')) { project.android { compileSdkVersion 34 targetSdkVersion 34 } } } }
确保根build.gradle的buildscript依赖已正确配置AGP 8.3.0(你的当前配置已符合要求)。
3. 彻底清理缓存并重新构建
执行以下命令清除所有缓存文件,避免旧配置残留:
flutter clean rm -rf ~/.gradle/caches cd android && ./gradlew cleanBuildCache cd .. && flutter pub get cd android && ./gradlew build
4. 适配Android Studio版本
Android Studio Ladybug(2022.2.1)原生适配的最高AGP版本为7.4.x,虽然可以强制使用AGP 8.3.0,但可能存在隐性兼容性问题。若上述步骤无效,建议升级Android Studio到**Hedgehog(2023.1.1)**或更高版本,它原生支持AGP 8.x系列。
补充:解决android_intent_plus资源解析失败
若报错集中在该插件,大概率是插件版本过低导致不兼容AGP 8.3.0。在pubspec.yaml中升级插件到最新稳定版:
dependencies: android_intent_plus: ^4.1.0 # 替换为实际最新版本
执行flutter pub get重新拉取依赖后再尝试构建。
内容的提问来源于stack exchange,提问作者Sardor Sirojov
相关产品推荐
相关产品推荐

