性能優化15_安裝包優化(編輯中)

Android性能優化彙總
一個字:刪!!刪不了就儘量小

一 常見的優化方式

1.圖片壓縮

圖片:apk裏面的資源圖片 壓縮圖片
svg圖片:一些圖片的描述,犧牲CPU的計算能力的,節省空間。
使用的原則:簡單的圖標。

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 的字節碼。

args參數:
Lsn10SearchView.apk -config config.xml -7zip 7za.exe -out xxx/hehe -mapping xxx/yyy.txt

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章