如何使用新的Android Multidex支持库启用多重分化
我想使用新的Multidex支持库来打破我的一个应用程序的方法限制。
使用Android Lollipop Google推出了multidex支持库,可以轻松实现multidex。
需要采用哪些步骤来使用这个库并使用multidex支持构建我的应用程序?
修改你的build.gradle
:
android {
compileSdkVersion 22
buildToolsVersion "23.0.0"
defaultConfig {
minSdkVersion 14 //lower than 14 doesn't support multidex
targetSdkVersion 22
// Enabling multidex support.
multiDexEnabled true
}
}
dependencies {
compile 'com.android.support:multidex:1.0.3'
}
如果你正在运行单元测试,你会希望将它包含在你的Application
类中:
public class YouApplication extends Application {
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
}
欲了解更多信息,这是一个很好的指导。
开始多重分类需要以下步骤:
将android-support-multidex.jar添加到您的项目中。 该jar可以在您的Android SDK文件夹/ sdk / extras / android / support / multidex / library / libs中找到
现在,您可以让应用程序应用程序类扩展MultiDexApplication
public class MyApplication extends MultiDexApplication
或者像下面这样重写attachBaseContext:
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
我使用了重写方法,因为这不会影响应用程序类的类层次结构。
现在您的应用程序已准备好使用多个dex。 下一步是说服gradle构建一个多重dexed apk。 构建工具团队正在努力使这更容易,但目前你需要将以下内容添加到你的应用程序的android部分build.gradle
dexOptions {
preDexLibraries = false
}
以下是您的应用程序build.gradle的一般部分
afterEvaluate {
tasks.matching {
it.name.startsWith('dex')
}.each { dx ->
if (dx.additionalParameters == null) {
dx.additionalParameters = ['--multi-dex']
} else {
dx.additionalParameters += '--multi-dex'
}
}
}
更多信息可以在Alex Lipovs博客上找到。
SIMPLY,为了启用multidex,你需要......
android {
compileSdkVersion 21
buildToolsVersion "21.1.0"
defaultConfig {
...
minSdkVersion 14
targetSdkVersion 21
...
// Enabling multidex support.
multiDexEnabled true
}
...
}
dependencies {
compile 'com.android.support:multidex:1.0.0'
}
你也必须改变你的清单文件。 在您的清单中,将multiDexApplication类从multidex支持库添加到像这样的应用程序元素
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.multidex.myapplication">
<application
...
android:name="android.support.multidex.MultiDexApplication">
...
</application>
</manifest>
链接地址: http://www.djcxy.com/p/55027.html
上一篇: How to enable multidexing with the new Android Multidex support library