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

Flutter项目迁移后编译报错:AndroidManifest合并失败

嘿,这个问题我熟!你遇到的是典型的Android Support库版本冲突导致的Manifest合并失败——不同依赖引用了不同版本的support库,结果Manifest里的android.support.VERSION元数据重复了。给你几个靠谱的解决办法:

解决Flutter项目迁移后Android Manifest合并失败问题

方法1:强制统一所有Support库版本

这是最快解决冲突的方式,直接让Gradle强制所有依赖使用同一个版本的Support库。打开Android模块的android/app/build.gradle(注意是app目录下的,不是项目根目录的),添加以下配置:

android {
    // 保留你原本的其他配置...
    configurations.all {
        resolutionStrategy {
            force 'com.android.support:appcompat-v7:25.4.0'
            force 'com.android.support:support-v4:25.4.0'
            // 把报错里提到的其他冲突support库也加进来,版本统一成你需要的那个
        }
    }
}

保存后重新构建,Gradle会自动覆盖所有依赖的版本,避免冲突。

方法2:迁移到AndroidX(长远解决方案)

旧的Support库已经被AndroidX取代了,如果你打算彻底解决这类版本问题,建议直接迁移到AndroidX:

  1. 在android/gradle.properties文件里添加两行配置:
android.useAndroidX=true
android.enableJetifier=true
  1. 把android/app/build.gradle里的compileSdkVersion和targetSdkVersion升级到至少28(AndroidX的最低要求版本)。
  2. 运行flutter clean清理缓存,然后重新执行flutter run。Jetifier会自动把所有旧的Support库依赖转换成AndroidX对应的库。

方法3:排查具体冲突的依赖

如果你想搞清楚到底是哪个插件引入了冲突的版本,可以在Android Studio的Terminal里运行这个命令:

./gradlew app:dependencies

它会输出完整的依赖树,你搜索com.android.support相关条目,就能找到版本不一致的那个依赖。之后要么把这个插件升级到最新版本(很多新版本已经适配AndroidX了),要么用方法1的强制版本来覆盖它。

方法4:清理缓存重试

有时候缓存也会搞出奇怪的问题,先执行这几个命令清掉缓存:

flutter clean
rm -rf android/.gradle

然后重新构建项目,说不定问题就消失了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:45:52