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

Flutter升级Android端遇两类报错:Error-32601及清单合并失败

解决Flutter升级后Android构建的两个问题

刚升级Flutter就碰到这俩Android构建问题?我之前也踩过类似的坑,给你整理了靠谱的解决办法:

问题1:Error -32601 "Method not found"

这个错误大多是Flutter与原生Android的方法通道(MethodChannel)不匹配,或者插件版本兼容问题导致的,按下面步骤排查:

  • 更新插件版本:打开项目根目录的pubspec.yaml,把所有依赖的Flutter插件更新到适配当前Flutter SDK的最新版本,然后执行flutter pub get拉取最新依赖。
  • 核对方法名一致性:检查Dart端调用MethodChannel.invokeMethod()时传入的方法名,和Android原生端MethodChannel.setMethodCallHandler()里判断的方法名完全一致,包括大小写、下划线等细节,一点都不能错。
  • 清理缓存重建:执行flutter clean清除项目缓存,手动删除Android模块下的.build文件夹,然后重新运行flutter run构建项目。

问题2:任务':app:processDebugManifest'执行失败(清单合并冲突)

这个是因为项目中引入的不同依赖库使用了不同版本的Android Support库,导致清单合并时版本冲突,解决办法如下:

方法一:通过Manifest直接覆盖版本

  1. 打开Android模块的AndroidManifest.xml,在<application>标签里添加tools命名空间:
    <application
        xmlns:tools="http://schemas.android.com/tools"
        ...>
    
  2. 在<application>内部添加meta-data标签,指定统一的Support库版本并启用替换:
    <meta-data
        android:name="android.support.VERSION"
        android:value="26.1.0"
        tools:replace="android:value" />
    

方法二:统一所有依赖的Support库版本

打开Android模块的build.gradle(注意是Module级别的,不是Project根目录的),在android代码块中添加以下配置,强制所有依赖使用指定版本的Support库:

android {
    // 其他配置...
    configurations.all {
        resolutionStrategy.eachDependency { DependencyResolveDetails details ->
            def requested = details.requested
            if (requested.group == 'com.android.support') {
                if (!requested.name.startsWith("multidex")) {
                    details.useVersion '26.1.0'
                }
            }
        }
    }
}

完成上述配置后,同样执行flutter clean再重新构建项目即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 03:35:51