zipalign
ist ein Tool zum Ausrichten des ZIP-Archivs, das dafür sorgt, dass alle unkomprimierten Dateien
im Archiv
relativ zum Anfang der Datei ausgerichtet sind. So kann direkt über
mmap(2)
. Du musst diese Daten nicht mehr in den RAM kopieren, um die Arbeitsspeichernutzung deiner App zu reduzieren.
Optimieren Sie Ihre APK-Datei mithilfe von zipalign
, bevor Sie sie an weitergeben.
Endanwendenden. Wenn Sie zum Erstellen Android Studio mit dem Android-Gradle-Plug-in (AGP) verwenden, ist dies
automatisch erledigt wird. In diesem Fall sollten Sie dennoch mit zipalign
überprüfen, ob das APK
ausgerichtet, aber Sie müssen es nicht ausrichten. Diese Dokumentation richtet sich hauptsächlich an
benutzerdefinierte Build-Systeme erstellen.
Achtung: Sie müssen zipalign
an einer bestimmten Stelle in
während des Build-Prozesses. Das hängt davon ab, welches App-Signaturtool Sie verwenden:
-
Wenn Sie
apksigner
verwenden,zipalign
muss verwendet werden, bevor die APK-Datei signiert wurde. Wenn Sie Ihr Wenn Sie ein APK mitapksigner
verwenden und weitere Änderungen am APK vornehmen, wird die Signatur ungültig. -
Wenn Sie
jarsigner
verwenden (nicht empfohlen).zipalign
muss verwendet werden, nachdem die APK-Datei unterzeichnet wurde.
Für eine Ausrichtung ändert zipalign
die Größe des Felds "extra"
im Header der lokalen Datei der ZIP-Datei.
. Dieser Vorgang kann auch vorhandene Daten in den "extra"
-Feldern ändern.
Nutzung
Wenn dein APK geteilte Bibliotheken (.so
Dateien) enthält, verwende -P 16
um sicherzustellen, dass sie an einer Seitengrenze von 16 KiB ausgerichtet sind, die für mmap(2)
geeignet ist
sowohl auf Geräten mit 16 KiB als auch auf 4 KiB-Geräten. Bei anderen Dateien, deren Ausrichtung durch den
Erforderliches Ausrichtungsargument für zipalign
, sollte auf 4 Byte ausgerichtet sein
sowohl auf 32-Bit- als auch auf 64-Bit-Systemen.
So richten Sie infile.apk
aus und speichern es als outfile.apk
:
zipalign -P 16 -f -v 4 infile.apk outfile.apk
Bestätigen Sie die Ausrichtung von existing.apk
mit dem folgenden Befehl.
zipalign -c -P 16 -v 4 existing.apk
Optionen
In der folgenden Tabelle sind die verfügbaren zipalign
-Optionen aufgeführt:
Option | Beschreibung |
---|---|
-C | Prüft nur die Ausrichtung (die Datei wird nicht geändert). |
-f | Überschreibt die vorhandene Ausgabedatei. |
- Std. | Zeigt die Tool-Hilfe an. |
-P <pagesize_kb> | unkomprimierte .so -Dateien werden an die angegebene Seitengröße in KiB ausgerichtet. Gültige Optionen
für <pagesize_kb> sind 4, 16 und 64. |
-p | Mit 4 KiB werden unkomprimierte .so -Dateien auf Seiten ausgerichtet. Es wird empfohlen,
-P 16 , da -p eingestellt wurde. |
-V | Ausführliche Ausgabe. |
-z | Es wird mit Zopfli komprimiert. |