本文中采用的方式是官方提供的,官方链接为:
http://developer.android.com/intl/zh-cn/tools/building/multidex.html
64K问题比较麻烦,但是官方解决办法其实也比较简单,本文开发环境是as下,eclipse的建议转到as吧。
APP环境:
百川IM+趣拍。由于趣拍支持android最低版本为4.0.3,即API为15。实际上现在包括支付宝、微信这些APP支持版本也为4.0.3。
所以觉得如果APP没太大问题的话建议开发环境最低为4.0,即API14。因为3.0-4.0为平板系统,3.0以下的手机基本上也就没了~~~。
言归正传:
Gradle配置只需要app目录下的即可。
第一步:设置multiDexEnabled
第二步:引入multidex项目
第三步:配置MultiDexApplication
如果你没有自定义的application,那么直接在manifest的application节点中加入即可
如果自定义了application,只需要将自定义的application继承改为MultiDexApplication,然后重写attachBaseContext方法,加入MultiDex.install(this);
?
基本上现在是可以了。
?
但是呢,你会发现编译有点慢~然后解决办法来了,因为as2.0加入了代码热更新功能,所以首先要as更新到2.0吧。
然后在gradle下中的android加入红框框里面的内容:
这个的意思是指开发的时候最低版本为21,(所以你要有一个手机系统为5.0以上的手机吧),然后打包的时候最低版本为15。当然prod的api
版本也可以根据自己需求更改。
其实在打包的时候会让你选择是dev还是prod,选择prod为app支持最低版本为15(4.0.3)
?
然后又有问题了,你会发现打包的时候会失败,这是内存配置太小了。此时还是在gradle,android的节点下加入:
因为我的电脑是8G内存,所以打包的时候我选择了分配4G。
?
可能后面还有些坑没踩到,有问题了后续会补充吧~也欢迎大家多提意见。