You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ionic构建Android报错:AAPT检测到<manifest>含意外元素<queries>

解决AAPT: error: unexpected element found in 问题

问题根源

你的Android平台版本为8.1.0(对应API级别27),而<queries>是Android 11(API 30)及以上版本Manifest才支持的元素。cordova-plugin-local-notification或依赖的其他插件(如cordova-plugin-badge)在构建时自动注入了该标签,导致低版本Android平台的AAPT工具无法识别,从而抛出错误。

可行解决方案

方案1:添加Cordova构建钩子自动移除<queries>标签

通过钩子在编译前清理Manifest中的不兼容标签,无需升级平台或插件:

  1. 在项目根目录创建路径hooks/after_prepare,并新建文件remove_queries.js
  2. 将以下代码写入文件:
const fs = require('fs');
const path = require('path');

module.exports = function(context) {
    const platformRoot = path.join(context.opts.projectRoot, 'platforms/android');
    const manifestPath = path.join(platformRoot, 'app/src/main/AndroidManifest.xml');

    if (fs.existsSync(manifestPath)) {
        let content = fs.readFileSync(manifestPath, 'utf8');
        content = content.replace(/<queries[\s\S]*?<\/queries>/g, '');
        fs.writeFileSync(manifestPath, content, 'utf8');
        console.log('已移除AndroidManifest.xml中的<queries>元素');
    }
};
  1. 给钩子文件添加执行权限:
chmod +x hooks/after_prepare/remove_queries.js
  1. 重新执行构建:
ionic cordova build android --prod

方案2:降级冲突插件至兼容版本

安装适配Android 8.1.0的旧版本插件,避免注入<queries>标签:

# 卸载当前本地通知插件
ionic cordova plugin remove cordova-plugin-local-notification
# 安装兼容低版本Android的旧版本
ionic cordova plugin add cordova-plugin-local-notification@0.9.0-beta.2

# 同步降级badge插件(若存在兼容问题)
ionic cordova plugin remove cordova-plugin-badge
ionic cordova plugin add cordova-plugin-badge@0.8.8

方案3:升级Android平台(需注意兼容性)

若项目允许升级平台,可将Android平台升级至支持<queries>的最低版本(API 30,对应Cordova Android 10.x),但需注意:

  • Cordova CLI 9.0.0不支持Cordova Android 10.x,需先升级Cordova CLI至10.x:
npm install -g cordova@10.0.0
  • 升级Android平台:
ionic cordova platform remove android
ionic cordova platform add android@10.1.2

注:Ionic 3.x与Cordova CLI 10.x基本兼容,但需测试项目其他功能是否正常。

内容的提问来源于stack exchange,提问作者madeigner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 08:34:53