Rejestrowanie śladu systemu na urządzeniu

Urządzenia z Androidem 9 (poziom interfejsu API 28) lub nowszym mają aplikację systemową o nazwie Śledzenie systemu. Ta aplikacja jest podobna do narzędzia wiersza poleceń systrace, ale umożliwia rejestrowanie śladów bezpośrednio na urządzeniu testowym bez konieczności podłączania go i łączenia się z nim przez adb. Następnie możesz użyć aplikacji, aby udostępnić wyniki tych śladów zespołowi programistów.

Urządzenia z Androidem 10 i nowszym rejestrują ślady w formacie Perfetto, a starsze urządzenia – w formacie Systrace. Zalecamy używanie przeglądarki śladów Perfetto do otwierania obu formatów, a następnie analizowania śladów.

Pomaga rejestrować ślady podczas rozwiązywania błędów związanych z wydajnością aplikacji, takich jak powolne uruchamianie, powolne przejścia czy zacinanie się interfejsu.

Nagrywanie śledzenia systemu

Aplikacja Śledzenie systemu umożliwia nagrywanie śladu systemu za pomocą kafelka Szybkie ustawienia lub menu w samej aplikacji. W kolejnych sekcjach opisujemy, jak za pomocą tych interfejsów przeprowadzić proces nagrywania.

Nagrywanie za pomocą kafelka Szybkich ustawień

Kafelek Szybkie ustawienia jest zwykle wygodniejszym sposobem na ukończenie procesu śledzenia systemu na urządzeniu.

Konfigurowanie kafelka

Jeśli używasz śledzenia systemu po raz pierwszy na urządzeniu testowym lub jeśli nie widzisz kafelka Śledzenie systemu w panelu Szybkie ustawienia urządzenia (jak pokazano na rysunku 2), wykonaj te czynności:

  1. Włącz opcje programisty.
  2. Otwórz ekran ustawień Opcje programisty.
  3. W sekcji Debugowanie wybierz Śledzenie systemu. Otworzy się aplikacja Śledzenie systemu, w której zobaczysz menu aplikacji.
  4. W menu aplikacji włącz Pokaż kafelek Szybkich ustawień, jak pokazano na ilustracji 1. System dodaje kafelek Śledzenie systemu do panelu Szybkie ustawienia, jak pokazano na rysunku 2:

    Rysunek 1. Przełącznik Pokaż kafelek Szybkich ustawień w aplikacji Śledzenie systemu.
    Ilustracja 2. Kafelek Śledzenie systemu w panelu Szybkie ustawienia.

    Uwaga: domyślnie system dodaje kafelek Śledzenie systemu jako pierwszy w panelu Szybkie ustawienia. Jeśli chcesz, aby kafelek pojawił się w innym miejscu, użyj trybu edycji panelu, aby go przenieść.

Ukończ nagrywanie śladu systemowego

Aby nagrać ślad systemu za pomocą panelu szybkich ustawień, wykonaj te czynności:

  1. Kliknij kartę Śledzenie systemu z etykietą Nagrywaj ślad. Kafelek zostanie włączony i pojawi się stałe powiadomienie informujące o tym, że system rejestruje ślad, jak pokazano na rysunku 3:

    Powiadomienie z komunikatem „Ślad jest nagrywany. Kliknij, aby zatrzymać śledzenie.
    Rysunek 3. Trwałe powiadomienie, które pojawia się po rozpoczęciu śledzenia systemu na urządzeniu.
  2. Wykonaj w aplikacji działania, które chcesz sprawdzić.

  3. Aby zatrzymać śledzenie, kliknij kafelek Śledzenie systemu w panelu Szybkie ustawienia lub powiadomienie Śledzenie systemu.

    System wyświetli nowe powiadomienie z komunikatem „Zapisywanie śladu”. Po zakończeniu zapisywania system odrzuca powiadomienie i wyświetla trzecie powiadomienie z potwierdzeniem, że ślad systemowy został zapisany i możesz go udostępnić (rysunek 4):

    Powiadomienie z komunikatem „Ślad został zapisany”. Kliknij, aby udostępnić ślad.
    Rysunek 4. Trwałe powiadomienie, które pojawia się po zakończeniu zapisywania zarejestrowanego śladu przez system.

Nagrywanie za pomocą menu aplikacji

Menu aplikacji umożliwia skonfigurowanie kilku zaawansowanych ustawień związanych ze śledzeniem systemu i zawiera przełącznik do rozpoczynania i zatrzymywania śledzenia systemu.

Aby nagrać ślad systemowy za pomocą menu aplikacji Śledzenie systemu, wykonaj te czynności:

  1. Włącz opcje programisty.
  2. Otwórz ekran ustawień Opcje programisty. W sekcji Debugowanie kliknij Śledzenie systemu. Otworzy się aplikacja Śledzenie systemu.

    Jeśli skonfigurujesz kafelek Śledzenie systemu, możesz nacisnąć go i przytrzymać, aby otworzyć aplikację Śledzenie systemu.

  3. Aby uwzględnić aplikacje, w których śledzeniu systemowym włączono debugowanie, zaznacz opcję Śledź aplikacje z możliwością debugowania.

  4. Opcjonalnie możesz wybrać kategorie wywołań systemowych i wywołań czujników do śledzenia oraz rozmiar bufora na procesor w KB. Wybierz kategorie odpowiadające przypadkowi użycia, który testujesz, np. kategorię Audio do testowania operacji Bluetooth lub kategorię Memory do alokacji sterty.

  5. Opcjonalnie możesz wybrać Długie ślady, aby włączyć ślady, które są stale zapisywane w pamięci urządzenia. W przypadku tej opcji ustaw limity maksymalnego rozmiaru długiego śladumaksymalnej długości długiego śladu.

  6. Włącz przełącznik Record trace (Zapisz ślad), który jest wyróżniony na ilustracji 5. Kafelek zostanie włączony i wyświetli się stałe powiadomienie informujące o tym, że system rejestruje ślad, jak pokazano na rysunku 3.

    Rysunek 5. Przełącznik Zapisz ślad w ustawieniach śledzenia systemu.
  7. Wykonaj w aplikacji działania, które chcesz sprawdzić.

  8. Zatrzymaj śledzenie, wyłączając przełącznik Zapisz ślad.

    System wyświetli nowe powiadomienie z komunikatem „Zapisywanie śladu”. Po zakończeniu zapisywania system odrzuca powiadomienie i wyświetla trzecie powiadomienie z potwierdzeniem, że ślad systemowy został zapisany i możesz go udostępnić, jak pokazano na rysunku 4.

Udostępnianie śledzenia systemu

Aplikacja Śledzenie systemu umożliwia udostępnianie wyników śledzenia systemu w ramach kilku różnych procesów. Na urządzeniu z Androidem 10 (API na poziomie 29) lub nowszym pliki śledzenia są zapisywane z rozszerzeniem nazwy pliku .perfetto-trace i można je otwierać w interfejsie Perfetto. Na urządzeniu z wcześniejszą wersją Androida pliki śledzenia są zapisywane z rozszerzeniem .ctrace, które oznacza format Systrace.

Udostępnianie jako wiadomość

Śledzenie systemu umożliwia udostępnianie zebranych śladów innym aplikacjom na urządzeniu. Możesz wysłać ślad do zespołu programistów e-mailem lub za pomocą aplikacji do śledzenia błędów bez konieczności łączenia urządzenia z komputerem deweloperskim.

Po zarejestrowaniu śladu systemowego kliknij powiadomienie, które pojawi się na urządzeniu, np. to pokazane na rysunku 4. Pojawi się selektor intencji platformy, który umożliwi Ci udostępnienie śladu za pomocą wybranego komunikatora.

Udostępnianie z aplikacji Pliki

Na urządzeniach z Androidem 10 (API na poziomie 29) lub nowszym ślady są wyświetlane w aplikacji Pliki. Możesz udostępnić ślad z tej aplikacji.

Pobieranie raportu za pomocą narzędzia ADB

Możesz też wyodrębnić ślad systemowy z urządzenia za pomocą adb. Podłącz urządzenie, na którym zarejestrowano ślad, do komputera deweloperskiego, a potem uruchom w oknie terminala te polecenia:

cd /path-to-traces-on-my-dev-machine && \
  adb pull /data/local/traces/ .

Konwertowanie między formatami śledzenia

Możesz przekonwertować pliki śledzenia Perfetto na format Systrace. Więcej informacji znajdziesz w artykule Konwertowanie między formatami śladów.

Tworzenie raportu HTML

Gdy udostępniasz ślad, raport jest zapisywany w formie pliku .perfetto-trace na urządzeniach z Androidem 10 lub nowszym albo w formie pliku .ctrace na wszystkich innych wersjach.

Utwórz raport HTML z pliku śledzenia za pomocą interfejsu internetowego lub wiersza poleceń.

Interfejs internetowy

Otwórz plik śledzenia i wygeneruj raport w interfejsie Perfetto.

W przypadku pliku Perfetto kliknij Otwórz plik śledzenia. W przypadku pliku Systrace kliknij Otwórz w starszym interfejsie. Starszy interfejs użytkownika wygląda tak samo jak raport Systrace.

Wiersz poleceń

Aby wygenerować raport HTML z pliku śledzenia, uruchom w oknie terminala te polecenia:

cd /path-to-traces-on-my-dev-machine && \
  systrace --from-file trace-file-name{.ctrace | .perfetto-trace}

Jeśli nie masz jeszcze programu wiersza poleceń systrace, możesz go pobrać z projektu Catapult na GitHubie lub bezpośrednio z Android Open Source Project.