縮減apk大小
來到新公司一般第一步是安裝吃飯的工具,而第二部一般就是熟悉程式碼啦,我第一眼看到我們應用居然 >37M((汗!!))這還是1.0版本,功能也不多。。。我在優化的時候正好寫一下文章,技術大牛請略過,因為都是一些基礎的東西。
第一步:優化資原始檔
1、檢視圖片,居然有幾個500k的無用圖片。。。,就算有用也太大,直接可以找設計讓他們進行無失真壓縮。什麼?他們不知道??我給你工具 TinyPNG 用法嘛,百度君知道。
不能把工作放到後面處理,我們開發在以後收圖示和圖片的時候,一定要注意大小,當時直接打回去,一個icon,3X的差不多也就1k~3k,圖片最多接受100k
2、檢視無用drawble檔案,layout檔案,這個有專門的工具進行排查
第二步:除去無用第三方
我在優化的過程發現有好幾個沒有用的第三庫和/Android庫,寫到build裡就會打包到我們的apk中
第三步:去掉市場率佔用很低的cpu架構的so
這其實不是一個正確縮減apk大小的方式,英文每一個cpu架構他都有各自的處理機制,雖然有些可以做到相容,但是優化的功能就用不了,當然這個也看自己應用的情況,像我們公司,剛開始創業,市場率很低,就沒必要了,就連淘寶,qq他們都不是全部相容,光說不練假把式,我們看下他們的apk
我們可以看到,QQ只有一個armeabi
淘寶也是隻有armeabi
當然,你的專案裡可以提供支援多個 CPU 架構的 SDK ,可以同時提供多個目錄的 so,雖然此時 SDK 相對較大,但是被編譯的 so 還是以你在 gradle 裡設定的支援的 ndk 為準:
defaultConfig {
ndk { //只編譯armeabi架構
abiFilters ‘armeabi’ // , ‘arm64-v8a’, ‘x86’, ‘x86_64’ ,"armeabi-v7a’"
}
}
不太懂cpu架構這塊的可以檢視Android 多CPU架構支援所需要了解的知識
進行這一步,來看下apk已經到了21M,降了16M,是不是很有成就感
不過路還有很長,我的目標是降到15M左右,越往後降的大小就越少!
未完待續~~~
大最後分享一下接下來我的任務,大家都知道65K這個事情吧,解決方案是弄多個dex,我發現我們應用有70+個dex檔案(汗一直流~~~)
(注)本文提到的分析工具是AndroidStudo自帶的分析apk工具,點選檢視用法
相關文章
- 減小APK大小APK
- linux 縮減LV大小Linux
- 減少apk包大小的一種思路APK
- 減少Android APK的大小99.99%AndroidAPK
- Android Webp 完全解析 快來縮小apk的大小吧AndroidWebAPK
- 圖片壓縮知識梳理(2) 減小 PNG 大小
- 從 Gzip 壓縮 SVG 說起 — 論如何減小資原始檔的大小SVG
- 縮小APK,增加下載量APK
- [譯] Android效能最佳實踐:減少您的APK大小看這一篇就夠了AndroidAPK
- APK體積壓縮整理記錄APK
- Flutter Notes|Flutter-Apk 大小優化探索FlutterAPK優化
- 減小Delphi的Exe檔案大小
- APK瘦身-是時候給App進行減負了APKAPP
- Android開發如何有效減小APK的體積AndroidAPK
- LVM管理之減少LV的大小LVM
- ios平臺靜態庫大小裁減iOS
- Apk 極限壓縮(說點不一樣的)APK
- 怎樣壓縮Docker映象的大小Docker
- 如何減小微信小程式程式碼包大小微信小程式
- 如何在Mac上減少PDF檔案大小Mac
- 【譯】如何使用webpack減少vuejs打包的大小WebVueJS
- MySQL 減少InnoDB系統表空間的大小MySql
- 減小Delphi xe系列生成的exe檔案大小
- 減小VirtualBox虛擬硬碟檔案的大小硬碟
- 縮減Docker映象體積歷程總結Docker
- LVM : 縮減檔案系統的容量LVM
- Java8之Stream流(三)縮減操作Java
- word文件太大怎麼壓縮到最小 word壓縮檔案大小
- 如何通過 WebP 相容減少圖片資源大小Web
- 不用刪文字,減小Word檔案的大小方法
- 【AIX 命令學習】增加/減小邏輯卷的大小AI
- 10 個最佳化技巧,減少 Docker 映象大小【轉】Docker
- 批次壓縮影片大小的簡單操作分享
- 縮減程式碼和資源(Shrink Your Code and Resources)
- win10怎麼縮小桌面圖示大小 win10調整縮小桌面圖示大小設定方法Win10
- Python IDLE可以使用ctrl +[ 批量減少縮排,ctrl + ]批量增加縮排Python
- [譯] 怎樣減少 Android 應用包 60% 的大小?Android
- Docker的`COPY --chmod`可將映象檔案大小減少35%Docker