性能优化15_安装包优化

Android性能优化汇总
一个字:删!!删不了就尽量小

一 常见的优化方式

1.图片压缩

  • 压缩apk里面的普通图片资源
  • svg图片代替普通图片:SVG是一些图片的描述,牺牲CPU的计算能力的,节省空间。

webp压缩:

  • webp:谷歌现在非常提倡的使用。保存图片比较小。
    VP8派生而来的。webp的无损压缩比PNG文件小45%左右,即使PNG进过其他的压缩工具压缩后,
    任然可以减小到PNG的28%。

  • Facebook、腾讯、淘宝在用。
    缺点:加载相比于PNG要慢很多。 但是配置比较高。
    工具:http://isparta.github.io/

2 资源动态加载

动态下载的资源, 一些模块的插件化动态添加。
比如:emoji表情、换肤

3 Lint工具

建议优化的点
1)检测没有用的布局 删除
2)未使用到的资源 比如 图片 —删除
3)建议String.xml有一些没有用到的字符。

4.极限压缩

7zZip工具的使用。

5 Proguard 混淆

可以让apk变小,原因:
1)可以删除注释和不用的代码。
2)将java文件名改成短名a.java,b.java
3)方法名等 CommonUtil.getDisplayMetrix();–》a.a()

二 常规优化之外继续压缩—资源文件再压缩

系统编译完成apk文件以后:
映射关系:res/drawable/ic_launcher.png ----- > 0x7f020000

再做“混淆”:要实现将res/drawable/ic_launcher.png图片改成a.png
drawable文件的名字
String文件的名字
layout的名字
比如:R.string.description—>R.string.a
res/drawable/ic_launcher.png图片改成a.png

还可以更加夸张
res/drawable—>r/d
res/value–>r/v
res/drawable/ic_launcher.png图片改成r/d/a.png

读取resources.arsc二进制文件,然后修改某一段一段的字节。
有一段叫做:res/drawable/ic_launcher.png 在自己数组当中的第800位-810位
将这一段第800位-810位替换成改成r/d/a.png 的字节码。

项目Demo:安装包性能优化.zip
args参数:
Lsn10SearchView.apk -config config.xml -7zip 7za.exe -out xxx/hehe -mapping xxx/yyy.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值