公司项目在不断的改版迭代中,代码在不断的累加,终于apk包不负重负了,已经到了八十多M了。可能要换种方式表达,到目前为止没有正真的往外推过,一直在内部执行7天讨论需求,5天代码实现的阶段。你在写上个版本的内容,好了,下个版本的更新内容已经定稿了。基于这种快速开发的现状,我们app优化前已经有87.1M了,包大了,运营说这样转化不高,只能好好搞一下咯。优化过后包大小为23.1M(优化了73%,不要说我标题党)。好了好了,我要阐述我的apk超级无敌魔鬼瘦身之心得了。
文章主要内容从理论出发,再做实际操作。分为下面几个方面:
1.结构分析
2.具体实操
3.总结
4.参考资料
参考视频:
APK优化系列之瘦身篇
APK优化系列之签名篇
APK优化系列之加固篇
一丶 结构分析
首先上传一张瘦身前通过Analyze app分析出来的图片(打开方式:Android Studio下 ——> Build——> Analyze app):
APK包结构如下:
1.lib/
:包含特定于处理器软件层的编译代码。该目录包含了每种平台的子目录,像armeabi
,armeabi-v7a
, arm64-v8a
,x86
,x86_64
,和mips
。大多数情况下我们可以只用一种armeabi-v7a
,后面会讲到原因。
2.assets/
:包含应用可以使用AssetManager
对象检索的应用资源。
3.res/
:包含未编译到的资源 resources.arsc
,主要有图片资源文件。
4.META-INF/
:包含CERT.SF