Android分包方案
来源:互联网 发布:视频转图像matlab编程 编辑:程序博客网 时间:2024/06/08 16:56
最近加入一个新团队, 项目巨大!!!!好吧,其实也不是巨大,只是module依赖比较多, 整整12个- - ,从来没遇到过这么多的依赖, 编译速度被拖得好惨....
也是因为这样, 出现了65K 问题 . 就是整个项目,也就是整个.dex文件中的方法数超过65535个了, 承载不下了. 这个原因往往出现在 中型以至大型项目才会有.
这是个局限. 那么需要将一个.dex包拆分成两个包了.原理是这样:在拆分过程中, 编译器会将启动所需要的类放在一个包(此称main.dex), 而另外暂时不用到的类放到第二个包(此称second.dex)。
但是,这时候又有另外一个问题产生了, android应用启动只会启动一个main.dex包, 不会同时加载两个.dex包,所以需要我们在代码中手动引导加载第二个second.dex包.
原理简单粗暴介绍到这,下面直接上步骤。
1.在项目中所有需要打包的module下得build.gradle文件中添加 一句话 multiDexEnabled = true
defaultConfig { applicationId "com.biketo.rabbit" minSdkVersion 15 targetSdkVersion 22 versionCode 956 versionName "0.9.5.6" multiDexEnabled = true}
2.在android节点下加入如下图, 来保证分包后的编译环境
dexOptions { javaMaxHeapSize "2g" jumboMode = true}
3.导入multixdex support包,用来操作引打包过程(很重要,前面的配置都是为它而生).
//分包依赖库compile 'com.android.support:multidex:1.0.0'
MultiDexApplication4.让你的application类最终继承 MultiDexApplication 类.
结论:分包就是这么简单, 65K问题解决, 我们又能愉快的编译了.
PS:昨天4399挂了一个码农.就在我附近. 同学们要注意身体, 愿天堂没有产品经理, 善哉善哉..
1 0
- Android dex分包方案
- Android dex分包方案
- android分包方案
- Android dex分包方案
- Android dex分包方案
- Android dex分包方案
- Android dex分包方案
- Android dex分包方案
- Android dex 分包方案
- Android dex分包方案
- Android dex分包方案
- Android分包方案
- Android dex分包方案
- Android dex分包方案
- Android dex分包方案
- Android dex分包方案
- Android dex分包方案
- Android dex分包方案
- c++代码实现图的BFS遍历
- 快速排序的非递归实现
- APK反编译之一:基础知识
- Docker教程:dokcer machine的概念和安装
- SQL语句大全
- Android分包方案
- log4j配置详解
- A-DP
- back_suggest_tel
- 面试博客收集
- 联合办公格局已定?氪空间优客工场双雄争霸
- back_suggest_xiaomi
- CoreLocation框架地图定位(iOS9全适配)
- 上传app到appstore会遇到的问题