签到
Home
Android
iOS
C++
Article
搜索
登录
注册
Android安装包瘦身技巧
Home
/
Android
MrLee
2015-1-25
4270
很显然,APK安装包越小越好。下面从代码,资源文件,使用策略几个方面简要介绍下:
代码
保持良好的编程习惯,不要重复或者不用的代码,谨慎添加libs,移除使用不到的libs。
使用proguard混淆代码,它会对不用的代码做优化,并且混淆后也能够减少安装包的大小。
native code的部分,大多数情况下只需要支持armabi与x86的架构即可。如果非必须,可以考虑拿掉x86的部分。
资源
使用Lint工具查找没有使用到的资源。去除不使用的图片,String,XML等等。
assets目录下的资源请确保没有用不上的文件。
生成APK的时候,aapt工具本身会对png做优化,但是在此之前还可以使用其他工具如tinypng对图片进行进一步的压缩预处理。
jpeg还是png,根据需要做选择,在某些时候jpeg可以减少图片的体积。
对于9.png的图片,可拉伸区域尽量切小,另外可以通过使用9.png拉伸达到大图效果的时候尽量不要使用整张大图。
策略
有选择性的提供hdpi,xhdpi,xxhdpi的图片资源。建议优先提供xhdpi的图片,对于mdpi,ldpi与xxxhdpi根据需要提供有差异的部分即可。
尽可能的重用已有的图片资源。例如对称的图片,只需要提供一张,另外一张图片可以通过代码旋转的方式实现。
能用代码绘制实现的功能,尽量不要使用大量的图片。例如减少使用多张图片组成animate-list的AnimationDrawable,这种方式提供了多张图片很占空间。
总结
一个好的应用,需要具备很多优点,尽可能提供小的安装包是其中一个重要的方面。以上的小技巧,需要综合考虑,结合实际情况进行取舍。当然我们还可以采取一些按需加载的策略来减少安装包的体积,最好提一点,砍掉不必要的功能才是安装包瘦身的终极奥秘。O(∩_∩)O哈!
本文链接:
http://it72.com/931.htm
收藏
0
收藏的用户(
0
)
X
正在加载信息~
推荐阅读
Android桌面(Launcher应用)背后的故事(五)
Android代码注入LibInject
android从入门到精通(电子书下载)-百度网盘
ndk神奇问题之non-numeric second argument to `wordlist' function: '8.7z'
聊聊 Android N 开始支持的 Lambda
Instrumentation测试指南
Android应用基于XMPP的仿微信-百度网盘
Android Fragment 全面分析(续)
android中线性布局baselineAligned的作用
Android提供的LruCache内存缓存技术
最新回复
(
0
)
返回
站点信息
文章
2325
用户
1338
访客
12569993
每日一句
Living a meaningful life is a great achievement.
过有意义的生活,就是伟大的成就。
8个开发人员都应该知道的Android 库
Linux(Centos7)系统下给已有分区进行扩容
imencode和imdecode使用
升级后Android Studio 3.2.1的编译问题解决办法
【源码】两种仪表盘
从simplepjsua.c示例程序了解PJSUA-LIB的基本使用流程
关于Android Studio不能查看源码
Android Studio 4.2.2无法查看源码问题
CentOS 搭建 OpenVPN 服务
铁威马设置docker容器中的时间
免费xiuno博客主题【最后更新:2019.5.20】
独家发布最新可用My-AutoPost——wordpress 采集器
C#实现后台最小化截图
仙剑奇侠传3d回合-PC端多开
如何在iPhone上移动多个应用程序
首发:Thinkpad T550黑苹果10.13.4安装教程
css样式之flex布局注意事项
Android屏幕共享及远程控制【免root】
MPAndroidChart曲线非连续改装笔记
ASUS TF810C平板电脑用U盘安装windows8.1系统
新会员
weel
Thul
南北在南
Trya
龙祖
Yan
每天前进
/llx
。我是蓝
小满哥
Airh
南宁枫桥
同尘
Chil
好久不见
中国网建