升级Flutter项目后无法构建APK,遇资源合并错误求助
解决Flutter升级后构建APK时的mergeReleaseResources错误
你遇到的是Material库1.8.0-alpha01版本引入的资源标签兼容性问题,<macro>标签在低版本的Android Gradle Plugin(AGP)中无法被识别,导致资源合并失败。以下是几种可行的解决办法:
方法一:锁定Material库到稳定版本
打开项目根目录下的android/build.gradle文件,在allprojects代码块中添加依赖锁定配置,强制使用稳定的Material版本:
allprojects { repositories { // 原有仓库配置... } // 添加这段配置 configurations.all { resolutionStrategy { force 'com.google.android.material:material:1.7.0' } } }
方法二:升级Android Gradle Plugin和Gradle版本
如果你想保留Material 3的新特性,可以升级AGP和Gradle到支持<macro>标签的版本(AGP 7.4+ 对应 Gradle 7.5+):
- 修改
android/build.gradle中的AGP版本:buildscript { dependencies { classpath 'com.android.tools.build:gradle:7.4.2' } } - 修改
android/gradle/wrapper/gradle-wrapper.properties中的Gradle版本:distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
方法三:清理缓存后重新构建
不管用哪种方法,都建议清理缓存后再构建:
- 执行Flutter清理命令:
flutter clean - 清理Gradle缓存:
./gradlew cleanBuildCache - 重新构建APK:
flutter build apk
内容的提问来源于stack exchange,提问作者Tpp
相关产品推荐
相关产品推荐

