Flutter Android 出现 'Too Many Method References' 或 'Multiple dex files define' 错误解决方法
使用 Flutter 时,如果遇到报错'Too Many Method References' 或者 'Unable to execute dex: Multiple dex files define',这是因为 Dex 文件中的方法引用超过了 Android 平台的限制。
要解决这个问题,可以按照以下步骤进行操作:
-
打开 flutter 项目的
android/app/build.gradle文件。 -
在
android闭包内添加defaultConfig配置:
android {
defaultConfig {
...
// 添加以下两行
multiDexEnabled true
minSdkVersion 21 // 或更高版本
}
}
- 在
dependencies闭包内添加multiDex依赖:
dependencies {
...
implementation 'androidx.multidex:multidex:2.0.1'
}
- 在
android/app/src/main目录下创建一个新的 Java 类文件,例如MainApplication.java,并添加以下内容:
import androidx.multidex.MultiDexApplication;
public class MainApplication extends MultiDexApplication {
// ...
}
- 修改
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>
- 重新编译运行 Flutter 应用。
这样设置后,应该可以解决 'Too Many Method References' 或者 'Unable to execute dex: Multiple dex files define' 的问题。
原文地址: http://www.cveoy.top/t/topic/cWQy 著作权归作者所有。请勿转载和采集!