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

Android Studio运行Flutter应用遇Kotlin版本相关Dex方法数超限错误

解决Flutter Android端D8方法数超限问题(# methods: 67426 > 65536)

这个错误的本质是单个Dex文件最多只能容纳65536个方法,升级Kotlin版本后,新增的Kotlin标准库方法加上原有依赖的方法总数超过了这个上限,和Kotlin插件版本无关,得通过开启多Dex来解决,具体步骤如下:

1. 配置app级build.gradle

打开android/app/build.gradle文件,做两处修改:

  • 在defaultConfig代码块中添加多Dex启用配置:
defaultConfig {
    // 其他原有配置...
    multiDexEnabled true
}
  • 在dependencies代码块中添加多Dex依赖(兼容Android 5.0以下版本,高版本系统原生支持多Dex,但添加依赖更稳妥):
dependencies {
    // 其他原有依赖...
    implementation 'androidx.multidex:multidex:2.0.1'
}

2. 配置Application类

分两种情况处理:

  • 如果项目没有自定义Application类:直接修改AndroidManifest.xml里的application标签,指定系统提供的MultiDexApplication:
<application
    android:name="androidx.multidex.MultiDexApplication"
    <!-- 其他原有属性 -->
    >
    <!-- 其他内容 -->
</application>
  • 如果有自定义Application类:让你的类继承MultiDexApplication,或者在attachBaseContext方法里手动初始化多Dex:
class MyApp : Application() {
    override fun attachBaseContext(base: Context) {
        super.attachBaseContext(base)
        MultiDex.install(this)
    }
}

之后记得在AndroidManifest.xml的application标签里指定这个自定义类:

<application
    android:name=".MyApp"
    <!-- 其他原有属性 -->
    >
    <!-- 其他内容 -->
</application>

3. 清理重建项目

点击Android Studio顶部菜单栏的Build -> Clean Project,完成后再点Build -> Rebuild Project,最后重新运行Flutter应用即可。

如果开启多Dex后仍有问题,可以试试这两个优化方向:

  • 检查项目依赖,移除不需要的第三方库,减少方法总数
  • 开启R8代码混淆(release模式默认开启,debug模式可手动配置),进一步缩减方法数量

内容的提问来源于stack exchange,提问作者227 divya dholariya

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 09:12:09