據android官方網站的說明zipalign是一款重要的最佳化apk應用程式的工具。apk包的本質是一個zip壓縮文檔,最佳化的目的是使包內未壓縮的資料能夠有序的排列,從而減少應用程式運行時的記憶體消耗。
多數軟體開發商在正式推出其android應用程式,都使用zipalign工具最佳化apk包。但是,仍然有一些應用程式需要我們自己動手進行zipalign最佳化,例如一些個人開發的軟體,一些破解版的軟體。
使用sdk最佳化的,可以直接參考android官方網站的說明,本文主要介紹在已經Root安卓用戶端進行apk最佳化的方法。正式開始時請下載二進位檔案和指令碼代碼:zipalign.zip,解壓後產生一個二進位檔案zipalign,一個可執行指令碼zipalign_apks。
方法一:adb法(需要電腦已裝有android sdk)
1)安裝代碼
adb shell mount -o remount,rw /system
adb push zipalign /system/bin
adb push zipalign_apks /system/sd/zipalign_apks.sh
adb shell chmod 755 /system/bin/zipalign /system/sd/zipalign_apks.sh
adb shell mount -o remount,ro /system
2)運行指令碼代碼
adb shell sh /system/sd/zipalign_apks.sh
或者在手機超級終端運行
su
sh /system/sd/zipalign_apks.sh
方法二:使用Root Explorer
Root Explorer(簡稱RE)是一款強大的root管理器,它可以對系統區進行讀寫操作。
首先用RE將zipalign複製到/system/bin,設定許可權為rwxr-xr-x,如所示:
接著將zipalign_apks複製到/system/sd/或者其他地方,將其改名為zipalign_apks.sh,設定許可權與zipalign一樣。
然後運行zipalign_apks.sh(方法是用RE單擊這個檔案,跳出對話方塊,選擇Execute。
運行後,就會在/data/產生一個記錄檔zipalign.log,查看這個日誌文檔你就可以發現哪些應用程式被最佳化。
PS:本人做了一個針對中興V880的自動最佳化包(可直接使用recovery刷進手機)ZTE_V880_Zipalign.zip。刷進機子自動運行一次最佳化後將在/data/產生zipalign.log這個日誌文檔,如果你安裝了其他軟體,建議將這個日誌文檔刪除,那麼下次開機,它會再執行一次最佳化。