Narzędzia i interfejsy API do optymalizacji Androida zostały zaprojektowane tak, aby wykrywać wąskie gardła wydajności i określać ograniczenia urządzenia, a jednocześnie maksymalizować wydajność na trwałych poziomach w przypadku gier i aplikacji wymagających dużej mocy obliczeniowej.
Android GPU Inspector (AGI): narzędzie do profilowania systemu Android, które zapewnia zaawansowane śledzenie i analizę GPU w przypadku gier i aplikacji wymagających dużej ilości zasobów graficznych.
Android Performance Tuner (APT): wykrywaj w grze problemy z wydajnością związane z ustawieniami jakości, scenami, czasem wczytywania i modelami urządzeń.
Android Dynamic Performance Framework (ADPF): optymalizuj gry na podstawie dynamicznych funkcji zarządzania temperaturą, procesorem i GPU na poszczególnych urządzeniach.
Memory Advice API: podaje szacunkowe dane dotyczące wykorzystania pamięci i powiadomienia o przekroczeniu progu, dzięki czemu gra może utrzymywać optymalny poziom, który pozwala uniknąć zamykania aplikacji z braku pamięci.
Interfejs Game Mode API: optymalizuj rozgrywkę, nadając priorytet określonym cechom, takim jak wydajność lub czas pracy na baterii, na podstawie ustawień użytkownika lub konfiguracji specyficznych dla danej gry.
Perfetto: zbiera informacje o wydajności całego systemu i wyświetla je w interfejsie internetowym.
Systrace: rejestruje aktywność systemu i generuje raporty, które pomagają identyfikować problemy z wydajnością.
CPU Profiler: sprawdzaj wykorzystanie procesora i aktywność wątków w aplikacji w czasie rzeczywistym lub na podstawie zarejestrowanych śladów.
Meminfoclass: rejestruje migawkę alokacji pamięci aplikacji. Możesz też użyć tej funkcji za pomocą poleceniameminfo dumpsys.Raport o błędzie: wyświetlaj logi urządzenia, zrzuty stosu i inne informacje diagnostyczne, które pomogą Ci znaleźć i naprawić błędy w aplikacji.
R8: zmniejsza, optymalizuje i zaciemnia kod oraz zasoby aplikacji oparte na Javie i Kotlinie, aby zmniejszyć rozmiar DEX, poprawić wydajność uruchamiania i zminimalizować obciążenie pamięci w czasie działania.
Analizator konfiguracji R8: sprawdzaj i optymalizuj reguły zachowywania R8, aby identyfikować zbyt ogólne konfiguracje w aplikacji lub bibliotekach zewnętrznych, co pozwoli Ci ulepszyć zmniejszanie kodu, zaciemnianie i rozmiar DEX w przypadku zależności gry opartych na Javie i Kotlinie.
Profile bazowe: skróć czas uruchamiania i zmniejsz zacinanie się w fazie uruchamiania, udostępniając ART specyfikacje kompilacji AOT (ahead-of-time) dla ścieżek kodu w językach Java i Kotlin w Twojej grze, takich jak aktywności programu uruchamiającego i inicjowanie pakietu SDK.
Makrobenchmark: mierz i testuj wydajność aplikacji na wysokim poziomie, np. czas uruchomienia „na zimno” i operacje po uruchomieniu, w zautomatyzowanych środowiskach testowych lub CI, a także generuj profile bazowe dla swojej gry.