Android Gradle tworzy apk w dwóch plikach binarnych: niewyrównanych i wyrównanych.
Dokument powiedział ...
Po podpisaniu pliku APK kluczem prywatnym uruchom plik zipalign. To narzędzie zapewnia, że wszystkie nieskompresowane dane zaczynają się od wyrównania określonego bajtu względem początku pliku. Zapewnienie wyrównania na 4-bajtowych granicach zapewnia optymalizację wydajności po zainstalowaniu na urządzeniu. Po wyrównaniu system Android może odczytywać pliki za pomocą mmap (), nawet jeśli zawierają one dane binarne z ograniczeniami wyrównania, zamiast kopiować wszystkie dane z pakietu. Korzyścią jest zmniejszenie ilości pamięci RAM używanej przez uruchomioną aplikację.
Wydaje się, że do dystrybucji zdecydowanie zaleca się wyrównany plik APK. W moim przypadku używam tylko wyrównanego apk jako produktu końcowego i ignoruję niewyrównany apk.
Czy niewyrównany apk ma jakieś specjalne zastosowanie podczas programowania?
Niezrównany (podpisany) plik APK jest potrzebny, ponieważ podpisanie wyrównanego pliku APK spowoduje cofnięcie wyrównania.
Z dokumentów :
Zobacz tę odpowiedź po więcej. Oto szczegółowy proces kompilacji:
źródło