我弄了半天 发现还是不行
结果欲哭无泪 原来是我的反编译软件坏了!
后来我用了analyzer,发现确实是分包成功了
我现在希望把MainActivity分到主包中
Other分到2包中
怎么做?
build.gradle
defaultConfig { applicationId "com.example.myapplication" minSdkVersion 16 targetSdkVersion 27 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" multiDexEnabled true multiDexKeepProguard file('multiDexKeep.pro') // keep specific classes using proguard syntax multiDexKeepFile file('maindexlist.txt') // keep specific classes }
和defaultconfig同一级别给出
dexOptions {//dex配置 javaMaxHeapSize "4g" preDexLibraries = false def listFile = project.rootDir.absolutePath+'/app/maindexlist.txt' additionalParameters = [//dex参数详见 dx --help '--multi-dex',//多分包 '--set-max-idx-number=60000',//每个包内方法数上限 '--main-dex-list='+listFile,//打包进主classes.dex的文件列表 '--minimal-main-dex'//使上一句生效 ] }
然后在app目录下的maindexlist.txt
我先从
拷了这个文件到app目录下,再把我想要保留在第一个dex中的类写进去了,果然成功了!
这样就完事了,反正我3.1下成功了
如图