“error: unexpected element <queries> found in <manifest>“问题解决记录

在某天打开Android Studio突然发现,前一天能正常运行的项目无法运行了,报这个错误
在这里插入图片描述
报错“Execution failed for task ‘:app:processDebugResources’.”,显示“AAPT: error: unexpected element < queries > found in < manifest >”,想着应该是由于Studio更新,或者是gradle版本的问题,于是看了下Studio的版本,是4.1.3,又看了下项目的gradle的版本,是

classpath 'com.android.tools.build:gradle:3.4.2'

通过查询错误应该是gradle的版本过低,将项目gradle版本升级为

classpath 'com.android.tools.build:gradle:4.1.3'

编译后显示

Minimum supported Gradle version is 6.5. Current version is 6.1.1.

Please fix the project's Gradle settings.

于是再修改gradle-wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip

再编译后提示

A problem occurred configuring project ':app'.
> groovy.lang.MissingPropertyException: Could not get unknown property 'manifestOutputDirectory' for task ':app:processDebugManifest' of type com.android.build.gradle.tasks.ProcessMultiApkApplicationManifest.

然后查询到应该是应用集成了华为的推送,而华为推送的的版本过低,不能匹配gradle的版本,将集成版本从

classpath 'com.huawei.agconnect:agcp:1.2.1.301'

更新到

classpath 'com.huawei.agconnect:agcp:1.4.1.300'

重新编译,发现问题依然没有解决,于是通过不断搜索查询,可能是buttnerknife的版本也不匹配,将buttnerknife的版本修改为

implementation 'com.jakewharton:butterknife:9.0.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0'

发现项目除了华为推送,还依赖百度统计,而百度统计可能也存在和华为推送同样的问题,查看百度统计的版本,是

classpath 'com.baidu.mobstat:mtj-circle-plugin:latest.integration'

这样看插件应该是最新的版本,那是不是插件本身没有解决这个gradle的问题呢,这就太深层了,查看了一下代码,去掉依赖没有影响,那就去掉吧,查询了百度统计的gradle集成文档:集成文档
将代码里的StatService屏蔽,编译通过,运行成功

特此记录

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值