Aplikacja ma niską wydajność, jeśli reaguje wolno, wyświetla płynne animacje, zawiesza się lub zużywa zbyt dużo energii. Rozwiązywanie problemów z wydajnością obejmuje profilowanie aplikacji ani identyfikowanie obszarów, w których jest ona mało wydajna. wykorzystanie zasobów, takich jak procesor, pamięć, karta graficzna, sieć czy urządzenie; baterii. W tym artykule opisujemy narzędzia i techniki Androida Studio, które można wykorzystać do rozwiązań typowych problemów ze skutecznością.
Aby dowiedzieć się, jak uruchamiać samodzielne profilersi bez uruchamiania całego Androida Studio IDE (tylko Windows i Linux), patrz Uruchom samodzielny program profilujący.
Wymagania
Aby przeprowadzić profilowanie aplikacji, zalecamy:
Aplikacja z wersją kompilacji wersji, w której włączono konfigurację pliku manifestu
profileable
, zwana też aplikacją z profilowaniem. Domyślnie ta konfiguracja ma wartość „true” (prawda). Aby sprawdzić lub zmienić tę konfigurację, otwórz plik manifestu lub plikAndroidManifest.xml
aplikacji i w sekcji<application>
odszukaj konfigurację pliku manifestuprofileable
:<profileable android:shell="true" />
wirtualne lub fizyczne urządzenie testowe z interfejsem API na poziomie 29 lub wyższym i Google Play.
Wtyczka Androida do obsługi Gradle w wersji 7.3 lub nowszej.
Profilowalne aplikacje z możliwością debugowania
Aplikacja z możliwością profilowania umożliwia wykonywanie większości typowych zadań profilowania, ale zalecamy korzystanie z debuggable. alokacje lub przechwytywanie zrzutu stosu. Możliwy do debugowania proces aplikacji i uruchomione urządzenie Interfejs API na poziomie 26 lub wyższym umożliwia też wyświetlenie osi czasu Interakcji, która pokazuje interakcje użytkownika i zdarzenia cyklu życia aplikacji w widokach zadań, które je dostarczają.
Aplikacja z możliwością debugowania opiera się na wariancie kompilacji aplikacji debug
i umożliwia:
korzystać z narzędzi dla programistów, takich jak debuger; jednak pojawia się
z pewnymi kosztami wydajności. Aplikacja do profilowania opiera się na wersji release
aplikacji i umożliwia wykonywanie podzbioru typowych zadań profilowania bez obciążenia wydajnościowego związanego z wersją debugową.
Tworzenie i uruchamianie aplikacji z możliwością profilowania
Aby skompilować i uruchomić aplikację, którą można profilować, w Android Studio wykonaj te czynności:
- Utwórz konfigurację uruchamiania/debugowania, jeśli: nie mają jeszcze konta.
- Wybierz wariant kompilacji wersji (Kompilacja > Wybierz wariant kompilacji).
- Kliknij Więcej działań > Profil „aplikacja” i ma niskie obciążenie lub profil „aplikacja” z pełnymi danymi („app” to nazwa konfiguracji uruchamiania, więc może być inna w Ty). Aby wybrać jedną z dwóch opcji, zobacz Wymagania. Aplikacja otworzy się na urządzeniu testowym, a na Androidzie otworzy się panel Profiler. Studio.
Jeśli te instrukcje nie pomogą, zapoznaj się z artykułem Ręczne kompilowanie i uruchamianie aplikacji do profilowania.
Rozpocznij profilowanie
Aby rozpocząć zadanie profilowania, wykonaj te czynności:
Wybierz proces z listy na karcie Home (Strona główna) w narzędziu Profiler panel. W większości przypadków najlepiej jest wybrać proces, który odzwierciedla do aplikacji.
Wybierz zadanie profilowania w sekcji Lista zadań. Więcej informacji o zadaniach znajdziesz na innych stronach w tej sekcji. Nie wszystkie zadania profilowania są dostępne w przypadku każdego procesu. Jeśli nie wiesz, od czego zacząć, uzyskaj ogólny widok aktywności związanej z wydajnością, sprawdzając aplikację na żywo.
W menu Rozpocznij zadanie profilu z wybierz, czy chcesz uruchomić zadanie profilu podczas uruchamiania czy dołączyć do procesu w trakcie jego wykonywania. Jeśli chcesz skrócić czas uruchamiania aplikacji lub zarejestrować proces, który odbywa się podczas uruchamiania aplikacji, musisz uwzględnić uruchamianie. W przeciwnym razie możesz rozpocząć profilowanie w bieżącym stanie aplikacji.
Kliknij Rozpocznij zadanie narzędzia do profilowania. Zadanie pojawi się na osobnej karcie.
Interakcja z aplikacją, aby wywołać działania.
Zatrzymaj nagrywanie (jeśli to możliwe), poczekaj na jego przeanalizowanie i wyświetl wyników.
Porównywanie, eksportowania i importowania logów czasu
Gdy zatrzymasz zadanie profilowania, jest ono automatycznie zapisywane w zakresie przeszłości. Rejestracje w panelu Profiler. Zapisane nagrania możesz wykorzystać do porównania wykorzystania zasobów w różnych scenariuszach. Nagrania są zapisywany na czas bieżącej sesji w Android Studio; jeśli chcesz aby zachować je na dłużej, wyeksportuj je, klikając Eksportuj nagranie. Nie wszystkie typy logów czasu można wyeksportować.
Aby zaimportować ślad, np. z poprzedniego uruchomienia Android Studio, kliknij Importuj nagraniena karcie Wcześniejsze nagrania i wybierz plik śladu. Plik możesz też zaimportować, przeciągając go do okna edytora Android Studio.
Edytuj konfigurację nagrywania
Aby edytować konfigurację nagrywania zadań przez program profilujący, kliknij ustawienia programu profilującego Dostępne są 2 główne ustawienia:
- W przypadku zadań, które obejmują próbkowanie, interwał próbkowania oznacza czas między każdą próbką. Im krótszy interwał, tym szybciej osiągnąć limit rozmiaru zarejestrowanych danych.
- Limit rozmiaru pliku odpowiada ilości danych, które można zapisać z połączonego urządzenia. Gdy zatrzymasz nagrywanie, Android Studio przeanalizuje te dane i wyświetli ją w oknie programu do profilowania. Jeśli zwiększysz limit i zarejestrujesz jeśli dane są duże, ich analiza w Android Studio trwa znacznie dłużej. może przestać odpowiadać.