我有一个Android项目,其中添加了许多库项目作为模块。
项目中的方法数量超过了android(65k)的限制。我使用multidex作为解决方案。它没有解决我的问题。
这是我的build.gradle文件。
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
aaptOptions {
cruncherEnabled = false
}
defaultConfig {
minSdkVersion 14
targetSdkVersion 23
multiDexEnabled = true
}}
首先,我尝试将MultiDex.install()添加到ApplicationContext文件中的onCreate方法中。它没有用。 而ApplicationContextNormal.java文件就在这里;
public class ApplicationContextNormal extends ApplicationContext {
@Override
public void onCreate() {
MultiDex.install(this);
super.onCreate();
}
}
然后,我尝试将MultiDex.install()添加到attachBaseContext方法中。
public class ApplicationContextNormal extends ApplicationContext {
...
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(base);
}
...
这是我的AndroidManifest.xml;
<application
android:name="com.alyt.lytmobilenormal.connection.ApplicationContextNormal"
...
我是否应该解决这个问题Dex优化方式?我对主项目进行了更改,而不是在我的模块项目中。或者我错过了什么?
有什么想法吗?
答案 0 :(得分:0)
更改此内容:添加multiDexEnabled true
会失去'='
defaultConfig {
minSdkVersion 14
targetSdkVersion 23
multiDexEnabled true
}
此外,您的课程应扩展Application
课程
public class ApplicationContextNormal extends Application {}