Co to jest Zipalign w Androidzie i jak zrobić aplikacje Zipalign

click fraud protection

Jeśli jesteś zagorzałym fanem Androida, istnieje duża szansa, że ​​chętnie wypróbujesz nowe motywy, niestandardowe ROMy i wszystkie takie mody dla swojego urządzenia. Jednym z głównych punktów zamieszania jest terminologia związana z tymi modami - coś całkiem znanego twórcom, ale nie za bardzo początkującym użytkownikom. Dwa najczęściej występujące słowa w niestandardowych pamięciach ROM i motywach to „deodexed” i „zipalign”. Kilka dni temu my pokryty „Deodeksowane” szczegółowo. W tym artykule zajmiemy się co oznacza zipalign i w jaki sposób można dostosować pliki APK.

CO TO JEST ZIPALIGN?

zipalign to narzędzie do wyrównywania archiwów wprowadzone po raz pierwszy wraz z pakietem SDK systemu Android 1.6. Optymalizuje sposób pakowania pakietu aplikacji dla systemu Android (APK). Pozwala to systemowi operacyjnemu Android na bardziej wydajną interakcję z aplikacją, a zatem może znacznie przyspieszyć aplikację i cały system. Czas wykonywania jest zminimalizowany w przypadku skompresowanych aplikacji, co skutkuje mniejszym zużyciem pamięci RAM podczas uruchamiania APK.

instagram viewer

W JAKI SPOSÓB TO DOKŁADNIE DZIAŁA?

W środowisku operacyjnym Android pliki danych przechowywane w każdym pakiecie aplikacji są dostępne przez wiele procesów, na przykład instalator odczyta manifest danych w celu ustalenia powiązanego uprawnienia; serwer systemowy może odczytać te zasoby z wielu powodów, takich jak wyświetlanie powiadomień; na przykład aplikacja domowa odczyta zasoby, aby uzyskać nazwę i ikonę aplikacji. Ponieważ Android opiera się na prawdziwej wielozadaniowej infrastrukturze operacyjnej, pliki te są stale i wielokrotnie dostępne. Wreszcie, sama aplikacja odczytuje dane manifestu.

Ponieważ Android jest oparty na systemie Linux, mapowanie pamięci odgrywa kluczową rolę w wydajnej obsłudze procesów. Zasadniczo optymalne dopasowanie kodu obsługi zasobów w systemie operacyjnym Android wynosi 4-bajtowe granice. Oznacza to, że jeśli pliki APK są odwzorowane w pamięci na 4-bajtowe granice i odpowiednio dostosowane, system operacyjny nie będzie musiał „czytać” całego pakietu aplikacji, aby uzyskać pożądane dane oczywisty. Każdy proces systemowy z góry będzie wiedział, gdzie szukać pożądanych zasobów, a zatem będzie przebiegał znacznie płynniej i szybciej.

Podsumowując, zipaligning APK skutkuje wyrównaniem wszystkich nieskompresowanych danych w pakiecie na 4-bajtowych granicach, umożliwiając bezpośredni dostęp do wszystkich części z mapą pamięci. Zużycie pamięci RAM jest zmniejszone podczas wykonywania, ponieważ kod zapytania nie musi czytać całego pakietu aplikacji.

WADY NIEZGODNYCH APKÓW

Zrozumiałe jest, że sytuacja byłaby zarezerwowana dla niewyrównanych pakietów aplikacji. Odczytywanie zasobów byłoby powolne, a użycie pamięci na wyższym końcu spektrum. Zależy to również od liczby niezapasowanych aplikacji. Na przykład, jeśli mniejsza liczba aplikacji z niewyrównaną aplikacją domową, zobaczysz wolniejsze czasy uruchamiania aplikacji. To najlepszy scenariusz. W najgorszym przypadku posiadanie wielu nieprzystosowanych aplikacji spowoduje, że system będzie wielokrotnie uruchamiał i zabijał procesy, zmagając się z opóźnieniami i ogromnym zużyciem baterii.

JAK TO ROBISZ?

Jak wspomniano wcześniej, narzędzie zipalign stało się częścią zestawu Android SDK od wersji 1.6. Można go znaleźć w folderze „narzędzia” pakietu SDK. Aby go użyć, po prostu uruchom polecenie:

zipalign [-f] [-v]  infile.apk outfile.apk

gdzie infile.apk to plik źródłowy, a outfile.apk jest plikiem wyjściowym.

Ponadto można również sprawdzić wyrównanie pliku APK za pomocą następującego polecenia:

zipalign -c -v  istniejąca.apk

gdzie istniejąca.apk może być dowolny pakiet aplikacji, który musisz zweryfikować. Ponadto, Tag w obu poleceniach musi być wartością całkowitą (w przeciwnym razie polecenie zwróci niepoprawne). Ta wartość, chociaż może być dowolną liczbą całkowitą, MUSI zawsze wynosić 4, co zapewni wyrównanie 32-bitowe. Każda inna wartość i to skutecznie nic nie da.

Wreszcie w przypadku flag używanych w tych poleceniach

  • -fa: zastępuje istniejący plik outfile.zip
  • -v: da pełne wyjście
  • -do: potwierdzi wyrównanie danego pliku

SŁOWO UWAGA: Operacja zipalign może być wykonana tylko po podpisałeś plik APK kluczem prywatnym. Jeśli przed podpisaniem zostanie skompresowany, procedura podpisywania zakłóci wyrównanie. To samo dotyczy każdej innej zmiany, dodania lub usunięcia pliku APK. Każda zmiana po uruchomieniu zipalign spowoduje cofnięcie wyrównania.

Zrzeczenie się: Ten przewodnik jest przeznaczony wyłącznie do celów edukacyjnych. W żaden sposób nie zastępuje to zestawu narzędzi dla programistów Androida ani nie jest przeznaczone do użytku w celach programistycznych. AddictiveTips nie zapewnia żadnego wsparcia w odniesieniu do prezentowanych tu materiałów.

watch instagram story