Android 5.0 及更高版本
- minSdkVersion 等于21或者更高值, 默认情况下启用多 dex 文件,并且不需要依赖。
Android 5.0 以下版本
minSdkVersion 等于20或者更低值,则必须使用依赖库支持.
- 修改Module下的 build.gradle 文件以启用多 dex 文件,并且添加依赖.
android {
defaultConfig {
...
minSdkVersion 15
targetSdkVersion 29
multiDexEnabled true
}
...
}
dependencies {
implementation 'com.android.support:multidex:1.0.3'
// implementation 'androidx.multidex:multidex:2.0.1' //Android X
}
- 设置Application
//1.如果不替换Application, 那么就在清单文件的application节点配置上
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapp">
<application
android:name="android.support.multidex.MultiDexApplication" >
...
</application>
</manifest>
//2.如果需要创建新的Application类, 则继承MultiDexApplication,并在清单文件中配置
public class MyApplication extends MultiDexApplication { ... }
//3.如果需要创建新的Application类,但无法更改父类,则需要重写attachBaseContext方法
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}