「zipalign
」是 ZIP 封存檔對齊工具,可協助確保所有未壓縮的檔案
封存資料
都會根據檔案開頭對齊這可讓您直接透過瀏覽器
mmap(2)
,不再需要複製 RAM 中的資料,並降低應用程式的記憶體用量。
在發布 APK 檔案前,請先使用 zipalign
將 APK 檔案最佳化
而非使用者如果您是透過 Android Studio 使用 Android Gradle 外掛程式 (AGP) 進行建構,
自動完成作業在這種情況下,您仍應使用 zipalign
驗證 APK
但您不需要對齊本說明文件主要供
以及自訂建構系統
注意:您必須使用 zipalign
建構程序實際時機取決於您使用的應用程式簽署工具:
為了確實對齊,zipalign
會變更 ZIP「本機檔案標頭」中 "extra"
欄位的大小
專區。這項程序可能也會變更 "extra"
欄位中的現有資料。
用量
如果您的 APK 含有共用資料庫 (.so
檔案),請使用 -P 16
確保它們與適合 mmap(2)
的 16KiB 頁面邊界對齊
支援 16 KiB 與 4KiB 裝置其他檔案取決於
zipalign
的必要對齊引數,應對齊 4 個位元組
適用於 32 位元和 64 位元系統
如要對齊 infile.apk
,請將其儲存為 outfile.apk
:
zipalign -P 16 -f -v 4 infile.apk outfile.apk
如要確認 existing.apk
是否對齊,請使用下列指令。
zipalign -c -P 16 -v 4 existing.apk
選項
下表列出可用的 zipalign
選項:
選項 | 說明 |
---|---|
-c | 僅檢查對齊方式 (不會修改檔案)。 |
-f | 覆寫現有的輸出檔案。 |
- 小時 | 顯示工具說明。 |
-P <pagesize_kb> | 將未壓縮的 .so 檔案對齊 KiB 中的指定頁面大小。有效選項
<pagesize_kb> 為 4、16 和 64。 |
-p | 4KiB 頁面對齊未壓縮的 .so 檔案。建議使用
-P 16 ,因為 -p 已淘汰。 |
- V | 詳細輸出模式。 |
- Z | 使用 Zopfli 重新壓縮。 |