Moduł profilowania został wprowadzony w Androidzie 16 i umożliwia aplikacjom zbieranie danych profilowania za pomocą Perfetto na urządzeniach publicznych w terenie.
- Aplikacje mogą wysyłać żądania profilowania za pomocą zrzutu sterty Javy, profilu sterty, próbkowania stosu lub śledzenia systemu, a także ustawiać wybrane konfiguracje dla każdego z tych narzędzi.
- Aplikacje mogą zgłaszać zainteresowanie otrzymywaniem śladów określonych zdarzeń, a system może rozpoczynać i zatrzymywać śledzenie w przypadku tych aplikacji.
- Wyniki są redagowane tak, aby zawierały tylko informacje związane z procesem wysyłania żądania. Są one dostarczane do katalogu pamięci aplikacji w celu dalszego przetwarzania przez aplikację.
- Żądania są ograniczone i nie ma gwarancji, że zostaną wypełnione.
Granica modułu
- Profilowanie głównego modułu APEX –
com.google.android.profiling
:- Powierzchnia interfejsu Profiling API (Java):
- Lokalizacja kodu:
packages/modules/Profiling/framework
- Proces:
boot_class_path
- Lokalizacja kodu:
ProfilingService
(Java):- Lokalizacja kodu:
packages/modules/Profiling/service
- Proces:
system_server
- Lokalizacja kodu:
- Powierzchnia interfejsu Profiling API (Java):
Format pakietu
Moduł profilowania jest dostarczany jako pakiet APEX (com.google.android.profiling
). Zawiera 2 pliki JAR:
framework-profiling.jar
: zawiera interfejs API, z którym wchodzi w interakcję wywołujący. Jest to część ścieżki rozruchowej.service-profiling.jar
: zawiera nową usługę systemowąProfilingService
. Wczytany przez proces serwera systemowego.
Zależności
Ten moduł nie ma zależności zewnętrznych.