Rejestrowanie metod Java/Kotlin wywoływanych podczas wykonywania kodu aplikacji umożliwia wyświetlanie stosu wywołań i użycia procesora w danym momencie, z filtrowaniem do metod Java/Kotlin. Te dane są przydatne do identyfikowania fragmentów kodu, których wykonanie zajmuje dużo czasu lub wymaga wielu zasobów systemowych. Jeśli chcesz uzyskać pełny widok stosu wywołań, w tym natywnych ramek wywołań, użyj zadania profilowania próbkowania stosu wywołań.
Podczas nagrywania metod w językach Java lub Kotlin za pomocą profilera Androida Studio możesz wybrać typ nagrywania:
Śledzenie: instrumentuje aplikację w czasie działania, aby rejestrować sygnatury czasowe na początku i na końcu każdego wywołania metody. Sygnatury czasowe są zbierane i porównywane, aby generować dane śledzenia metod, w tym informacje o czasie. Śledzenia należy używać, gdy zależy Ci na dokładnych metodach, które są wywoływane. Śledzenie jest procesem wymagającym dużych zasobów, dlatego jeśli korzystasz z tej opcji, najlepiej, aby nagranie trwało około 5 sekund lub krócej.
Próbkowanie (starsza wersja): rejestruje stos wywołań aplikacji w częstych odstępach czasu podczas wykonywania kodu aplikacji opartego na Javie lub Kotlinie. Profiler porównuje zestawy przechwyconych danych, aby uzyskać informacje o czasie i wykorzystaniu zasobów podczas wykonywania kodu aplikacji opartego na Javie lub Kotlinie. Próbkowanie warto stosować, jeśli bardziej zależy Ci na czasie niż na dokładnych wywoływanych metodach.
Omówienie metod Java/Kotlin
Po uruchomieniu zadania Znajdź miejsca o wysokim obciążeniu procesora profiler Androida Studio podaje te informacje:
- Wykorzystanie procesora: pokazuje wykorzystanie procesora przez aplikację jako procent całkowitej dostępnej mocy obliczeniowej procesora w czasie. Pamiętaj, że wykorzystanie procesora obejmuje nie tylko metody Java/Kotlin, ale także kod natywny. Zaznacz fragment osi czasu, aby odfiltrować szczegóły z tego okresu.
- Interakcje: pokazuje interakcje użytkowników i zdarzenia cyklu życia aplikacji na osi czasu.
- Wątki: pokazuje wątki, w których działa Twoja aplikacja. W większości przypadków najpierw warto skupić się na wątku znajdującym się na samej górze, który reprezentuje Twoją aplikację.
Aby zidentyfikować metody lub stosy wywołań, które zajmują najwięcej czasu, użyj wykresu płomieniowego lub wykresu od góry do dołu.