android - 如何修复 "unexpected element <queries> found in <manifest>"错误?

标签 android flutter android-gradle-plugin android-manifest manifest

突然之间,我在我的 Android 项目中遇到了这个构建错误:

unexpected element <queries> found in <manifest>
我如何解决它?

最佳答案

Android Gradle 插件需要了解新的 list 元素,尤其是
对于 list 合并过程。如果插件有混淆的趋势
在 list 合并中看到它无法识别的元素,扔掉
构建问题中的错误。
在这种情况下,Android 11 引入了 <queries>作为 list 元素,旧版本的 Android Gradle 插件不知道该元素。
这发生在 list 合并中的事实意味着只需升级依赖项
可能会导致这个错误。例如,如果您升级到最新com.awesome:awesome-library 的版本, 它包含一个 <queries>元素
在其 list 中,您可能会因构建中的上述错误而崩溃,
即使您的代码没有任何其他更改。
谷歌发布了一系列补丁版本的 Android Gradle 插件来解决这个问题:

  • 3.3.3
  • 3.4.3
  • 3.5.4
  • 3.6.4
  • 4.0.1

  • 如果您使用 3.3.* 中的现有插件通过4.0.*系列,升级
    到该列表中的相关补丁版本(或更高版本),您不应该再
    遇到该错误(例如,classpath 'com.android.tools.build:gradle:4.0.1')。
    如果您使用的是 Android Studio 4.1 或更高版本,请使用匹配的
    Android Gradle 插件(例如,在 4.1.* 系列中),你应该没问题
    任何变化。那些插件版本已经知道 <queries> .
    this Android Developers Blog post更多。

    关于android - 如何修复 "unexpected element <queries> found in <manifest>"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62969917/

    相关文章:

    flutter - 如何在不单击按钮的情况下在 flutter 中显示警报对话框

    Gradle 全局变量不在 buildscript 范围内

    android - 无法更新Android Gradle插件版本

    android - 未知的 Android 通知栏图标 - 这个图标是什么?

    android - 在android上开发视频播放器以支持HLS

    flutter - 一次推送两条路由时不会调用 RouteAware didPushNext

    flutter - 如何在 TextButton 上设置最小宽度(不更改最小高度)

    android - 如何为 material.Slider View 创建绑定(bind)适配器?

    android - OnCreate 检测手机状态

    java - Android Studio Gradle 3.0编译java项目时出错