android分包之主包設置方法

主包設置方法

Android-Easy-MultiDexandroid gradle plugin 1.5.0-2.2.x之間的可以用,在2.3.0之后,由于gradle的api發生了變化,不能用了。

幸好com.android.tools.build:gradle:2.2.0+之后,官方有了新的方法:

android {
    dexOptions {
        additionalParameters '--minimal-main-dex', '--set-max-idx-number=40000'
    }
    defaultConfig {
        multiDexEnabled true
        multiDexKeepFile file('maindex_keep.txt')
        multiDexKeepProguard file('maindex_keep.pro')
    }
    ...
}

dependencies {
    compile 'com.android.support:multidex:1.0.1'
    ...
}

additionalParameters對應dx的附加參數,如:最小主包,設置單個dex最大方法數。

multiDexEnabled,multiDexKeepFile,multiDexKeepProguard 這3個配置在productFlavors中也可以使用,因為defaultConfigProductFlavor都實現了 BaseConfig,進而可以用dev flavorprod flavor區分是否使用分包keep規則。

maindex_keep.txt文件里面寫具體的類

com/example/MyClass.class
com/example/MyClass2.class

maindex_keep.pro文件里寫proguard規則

-keep class com.example.** { *; }

其他

快速加載secondary dex類庫: TurboDex

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容