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

Ionic Capacitor项目运行报Manifest merger failed错误如何解决

报错原因

你的Ionic Capacitor项目当前配置的最低支持Android SDK版本为21(对应Android 5.0),但项目依赖的androidx.security:security-crypto:1.0.0库最低要求SDK版本为23(对应Android 6.0),因此出现清单文件合并失败的报错。
以下是三种解决方案,按优先度排序:


方案1:提升项目minSdk版本到23(最推荐,无兼容风险)

Ionic Capacitor项目不要直接修改安卓原生目录下的配置,避免后续同步配置时被覆盖,正确操作步骤:

  • 找到项目根目录下的capacitor.config.ts(若为JSON配置则是capacitor.config.json),添加安卓minSdk配置:
    若为TS配置:
    import { CapacitorConfig } from '@capacitor/cli';
    
    const config: CapacitorConfig = {
      // 保留你的其他原有配置
      android: {
        minSdkVersion: 23,
      },
    };
    
    export default config;
    
    若为JSON配置:
    {
      // 保留你的其他原有配置
      "android": {
        "minSdkVersion": 23
      }
    }
    
  • 回到项目根目录执行命令,同步配置到安卓原生项目:
    npx cap sync android
  • 重新执行ionic capacitor run android --open运行项目即可。

目前Android 6.0以下的设备全球市场占比不足1%,该方案基本不会影响你的用户覆盖范围。


方案2:替换兼容minSdk 21的依赖插件

如果你确实需要兼容Android 5.0/5.1设备,可按以下步骤操作:

  • 排查当前项目引入的所有Capacitor插件,找到是哪个插件依赖了androidx.security:security-crypto:1.0.0库
  • 查找该插件的历史低版本,或者功能相同的替代插件,要求其依赖的安全加密库支持minSdk 21,替换原有插件即可解决报错

方案3:强制覆盖库的minSdk要求(不推荐,可能存在运行时崩溃风险)

如果你必须保留当前minSdk 21的配置,同时要使用当前的插件,可按报错提示强制绕过编译校验:

  • 打开你贴出的AndroidManifest.xml文件,先给manifest标签添加tools命名空间,修改后如下:
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        package="com.jeep.app.ionic.angular">
    
  • 在manifest标签下、application标签之前添加如下配置:
    <uses-sdk tools:overrideLibrary="androidx.security" />
    

修改后重新编译即可绕过报错,但要注意:该方案只是强制通过编译,如果你用到了androidx.security库在SDK 21上不存在的API,App在Android 5.0/5.1设备上运行时会直接崩溃。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 23:39:00