添加com.huawei.agconnect插件后Flutter项目构建失败如何解决?
Flutter集成华为AGConnect插件构建资源链接失败解决方案
该报错核心为华为推送SDK的AndroidManifest中引用的属性资源未正常生成,按照以下步骤逐一排查即可解决:
- 第一步清理本地缓存:关闭当前开发IDE,删除用户目录下
.gradle/caches文件夹,再在Flutter项目根目录依次执行flutter clean、flutter pub get命令,之后重新尝试构建,排除缓存损坏导致的资源读取异常。 - 第二步检查AGCP与Android Gradle插件版本兼容性:你当前使用的
com.android.tools.build:gradle:3.5.0版本过低,与com.huawei.agconnect:agcp:1.4.2.301存在兼容冲突,可选择两种方案调整:- 升级Android Gradle插件版本到3.5.4及以上,同步修改
gradle/wrapper/gradle-wrapper.properties中的Gradle版本到5.4.1及以上 - 降级AGCP版本到1.2.1.301,该版本可兼容AGP 3.5.0
- 升级Android Gradle插件版本到3.5.4及以上,同步修改
- 第三步调整Gradle插件加载顺序:
android/app/build.gradle中插件加载顺序错误,AGConnect插件需要放在Google Services插件之前加载,修改后顺序如下:
apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" apply plugin: 'com.huawei.agconnect' apply plugin: 'com.google.gms.google-services'
- 第四步检查compileSdkVersion配置:打开
android/app/build.gradle确认android代码块下的compileSdkVersion不低于29,如果低于29请升级到29或更高版本,避免华为高版本SDK的属性无法被识别。 - 第五步检查AGC配置文件:确认你已经从华为AGC后台下载了
agconnect-services.json配置文件,并且放置在Flutter项目的android/app目录下,缺少该文件会导致AGConnect插件无法生成所需的资源属性,引发资源找不到错误。 - 第六步临时验证方案:如果以上步骤都无法解决,可以在
android/gradle.properties中添加android.enableAapt2=false关闭AAPT2编译,验证是否是AAPT2版本兼容导致的问题。该方案仅用于排查,不建议作为最终解决方案,优先升级相关插件版本解决根本问题。
内容的提问来源于stack exchange,提问作者rebellion
相关产品推荐
相关产品推荐

