Optymalizacja wydajności Androida

Aby urządzenia z Androidem minimalizowały zużycie zasobów i optymalizowały wydajność, postępuj zgodnie z instrukcjami w tej sekcji. Wykorzystaj też liczne testy i narzędzia opisane w sekcji Ocena skuteczności, aby jak najlepiej wykorzystać Androida.

Buforowanie plików APK

W tym dokumencie opisujemy projekt rozwiązania do buforowania plików APK, które umożliwia szybką instalację wstępnie załadowanych aplikacji na urządzeniu obsługującym partycje A/B. Producenci OEM mogą umieszczać wstępnie załadowane i popularne aplikacje w pamięci podręcznej APK przechowywanej na prawie pustej partycji B na nowych urządzeniach z partycjami A/B bez wpływu na przestrzeń danych użytkownika.

Czasy uruchamiania

Android 8.0 umożliwia skrócenie czasu uruchamiania dzięki wprowadzeniu kilku ulepszeń w różnych komponentach. Ten dokument zawiera wskazówki dla partnerów dotyczące skracania czasu uruchamiania na określonych urządzeniach z Androidem.

Zdrowie

Android 9 zawiera android.hardware.health HAL 2.0, czyli główną wersję HAL health@1.0. Ten nowy HAL zapewnia lepsze oddzielenie kodu platformy od kodu dostawcy, większą swobodę dostosowywania przez dostawcę raportów o stanie zdrowia oraz więcej informacji o stanie urządzenia niż tylko o baterii.

lowmemorykiller

Proces lmkd w przestrzeni użytkownika implementuje tę samą funkcję, ale z wykorzystaniem istniejących mechanizmów jądra do wykrywania i szacowania obciążenia pamięci. Używa zdarzeń vmpressure generowanych przez jądro, aby otrzymywać powiadomienia o poziomach obciążenia pamięci.

Optymalizacja oparta na profilu

System kompilacji Androida obsługuje używanie optymalizacji opartej na profilu (PGO) Clang w natywnych modułach Androida, które mają reguły kompilacji blueprint.

Zrzuty zadań

Zrzuty zadań to infrastruktura wprowadzona w Androidzie O, która łączy zrzuty ekranu na potrzeby miniatur w widoku Ostatnie oraz zapisane powierzchnie z Menedżera okien. Miniatury w widoku Ostatnie przedstawiają ostatni stan zadania w tym widoku.

Zapisywanie logów z wyprzedzeniem

Android 9 wprowadza specjalny tryb SQLiteDatabase o nazwie Compatibility WAL (zapisywanie logów z wyprzedzeniem), który umożliwia bazie danych używanie journal_mode=WAL przy zachowaniu maksymalnie jednego połączenia na bazę danych.

Menedżer NPU

Android 17 i nowsze obsługują Menedżera jednostki przetwarzania neuronowego (NPU), który koordynuje przydzielanie zasobów, ustala priorytety obciążeń i śledzi stan wykonania, aby utrzymać stabilność systemu i zoptymalizować wydajność urządzenia.