Android Studio提示Manifest merger failed,但合并清单无错误(targetSdkVersion 34)
解决Android Studio中“Manifest merger failed”但合并清单无异常的问题
- 清理重建项目
先点Build > Clean Project,再选Build > Rebuild Project,很多时候是编译缓存搞出来的假报错,清完重建就好。 - 查看详细合并日志
打开终端,执行./gradlew app:processDebugManifest --stacktrace(Windows系统用gradlew.bat app:processDebugManifest --stacktrace),这条命令会输出完整的清单合并过程,能精准找到冲突点——哪怕合并后的清单看起来没问题,日志里也会藏着细节。 - 核对API 34的适配要求
因为你targetSdkVersion是34(Android 14),这个版本有不少新限制:- 前台服务必须声明
android:foregroundServiceType属性,不能空着 - 大部分隐式广播不能静态注册,除非是系统允许的特例
把本地Manifest里的组件挨个过一遍,看看有没有踩这些坑。
- 前台服务必须声明
- 配置manifest合并策略
要是确定是依赖库和本地Manifest的冲突,直接在app模块的build.gradle里加规则强制解决,比如:android { manifestMerger { // 示例:强制使用本地Manifest的allowBackup属性 mergeRules.useOwn('android:allowBackup') // 其他冲突可以类似添加规则,比如useLibrary或者remove } } - 重置IDE缓存
点File > Invalidate Caches...,选Invalidate and Restart,把Android Studio的缓存清干净重启,有时候IDE缓存坏了会乱报错。 - 检查Manifest语法
右键本地Manifest文件,选Validate,让工具检查有没有隐形语法问题——比如标签没闭合、属性值写错格式,这些问题编辑器可能没标红,但合并时会触发错误。
内容的提问来源于stack exchange,提问作者Bhunnu Baba
相关产品推荐
相关产品推荐

