使用 Flutter 时,如果遇到报错'Too Many Method References' 或者 'Unable to execute dex: Multiple dex files define',这是因为 Dex 文件中的方法引用超过了 Android 平台的限制。

要解决这个问题,可以按照以下步骤进行操作:

  1. 打开 flutter 项目的 android/app/build.gradle 文件。

  2. android 闭包内添加 defaultConfig 配置:

android {
    defaultConfig {
        ...
        // 添加以下两行
        multiDexEnabled true
        minSdkVersion 21 // 或更高版本
    }
}
  1. dependencies 闭包内添加 multiDex 依赖:
dependencies {
    ...
    implementation 'androidx.multidex:multidex:2.0.1'
}
  1. android/app/src/main 目录下创建一个新的 Java 类文件,例如 MainApplication.java,并添加以下内容:
import androidx.multidex.MultiDexApplication;

public class MainApplication extends MultiDexApplication {
    // ...
}
  1. 修改 android/app/src/main/AndroidManifest.xml 文件,将 android:name 属性指向新创建的 MainApplication 类:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.your_app_package_name">
    <application
        android:name=".MainApplication" <!-- 修改为新创建的类 -->
        ...
    </application>
</manifest>
  1. 重新编译运行 Flutter 应用。

这样设置后,应该可以解决 'Too Many Method References' 或者 'Unable to execute dex: Multiple dex files define' 的问题。

Flutter Android 出现 'Too Many Method References' 或 'Multiple dex files define' 错误解决方法

原文地址: http://www.cveoy.top/t/topic/cWQy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录