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

如何解决Android Studio中的Manifest Merger合并错误?

解决Manifest合并失败("Manifest merger failed with multiple errors, see logs")的方案

首先别盲目修改Manifest,先找到具体错误原因——提示里的"see logs"是核心,很多人直接跳过这步瞎改反而浪费时间:

  • 在Android Studio底部打开Build窗口(找不到就点View > Tool Windows > Build),切换到Merge Errors标签页,里面会明确列出冲突点,比如权限重复、组件声明冲突、SDK版本不兼容等
  • 如果Build窗口没显示详细信息,打开终端执行./gradlew assembleDebug --info,搜索"manifest merger"关键词,就能找到完整的错误日志

针对常见冲突的解决方法:

  • 权限重复冲突:多个依赖库或自己的Manifest声明了同一权限,在自己的AndroidManifest.xml里添加tools:node="remove"移除重复项,记得先在根标签里声明xmlns:tools="http://schemas.android.com/tools",示例:
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" tools:node="remove"/>
    
  • 组件(Activity/Receiver/Service)冲突:比如依赖库的组件和你自己声明的重名,同样用tools:node="remove"移除依赖库的对应组件,或者用tools:node="replace"替换成自己的配置
  • SDK版本不兼容:检查app/build.gradle里的minSdkVersion、targetSdkVersion,确保和所有依赖库要求的版本匹配(比如依赖库要求minSdk 21,你的项目设成19就会触发冲突)
  • 主题或资源冲突:如果是主题冲突,检查Manifest里的android:theme属性,或者在build.gradle里用resValue统一主题配置;资源冲突的话,给自身资源加独特前缀避免重名
  • 依赖版本不一致:用./gradlew app:dependencies生成依赖树,找出重复或版本不统一的库(比如同时引入了AndroidX和旧版Support库),统一版本号,或者用exclude排除冲突的依赖模块,示例:
    implementation('com.example.library:xxx:1.0.0') {
        exclude group: 'androidx.appcompat', module: 'appcompat'
    }
    

最后做常规清理操作:

  • 执行Build > Clean Project,再Build > Rebuild Project
  • 要是还不行,删除项目根目录的.gradle文件夹和app/build文件夹,然后点击File > Sync Project with Gradle Files重新同步

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 08:50:22