Das Aufzeichnen der Geräteaktivität über einen kurzen Zeitraum wird als System-Tracing bezeichnet. Beim System-Tracing wird eine Trace-Datei erstellt, mit der Sie einen Systembericht generieren können. Mithilfe dieses Berichts können Sie ermitteln, wie Sie die Leistung Ihrer App oder Ihres Spiels am besten verbessern können.
Eine umfassende Einführung in das Tracing und die Profilerstellung finden Sie in der Perfetto-Dokumentation auf der Seite Tracing 101.
Die Android-Plattform bietet mehrere verschiedene Optionen zum Erfassen von Traces:
- CPU und Arbeitsspeicher-Profiler von Android Studio
- Perfetto-Befehlszeilentool (Android 10 und höher)
- Dienstprogramm zur Systemverfolgung
- Systrace-Befehlszeilentool
Der CPU-Profiler von Android Studio prüft die CPU-Nutzung und Thread-Aktivität Ihrer App in Echtzeit, während Sie mit Ihrer App interagieren. Sie können sich auch die Details der aufgezeichneten Methoden-, Funktions- und System-Traces ansehen. Der Arbeitsspeicher-Profiler bietet einen Überblick über die Arbeitsspeichernutzung in Bezug auf Touch-Ereignisse, Activity
-Änderungen und automatische Speicherbereinigungsereignisse.
Perfetto ist das plattformweite Tracing-Tool, das mit Android 10 eingeführt wurde. Es ist ein komplexes Open-Source-Tracing-Projekt für Android, Linux und Chrome. Im Vergleich zu Systrace bietet es eine Obermenge von Datenquellen und ermöglicht Ihnen, beliebig lange Traces in einem binären Protokollpufferstream aufzuzeichnen. Sie können diese Traces in der Perfetto-UI öffnen.
Das Dienstprogramm für das System-Tracing ist ein Android-Tool, das Geräteaktivitäten in einer Trace-Datei speichert. Auf Geräten mit Android 10 (API-Level 29) oder höher werden Trace-Dateien im Perfetto-Format gespeichert, wie weiter unten in diesem Dokument beschrieben wird. Auf einem Gerät mit einer früheren Android-Version werden Trace-Dateien im Systrace-Format gespeichert.
Systrace ist ein von der Legacy-Plattform bereitgestelltes Befehlszeilentool, das Geräteaktivitäten über einen kurzen Zeitraum in einer komprimierten Textdatei aufzeichnet. Das Tool erstellt einen Bericht, in dem Daten aus dem Android-Kernel kombiniert werden, z. B. aus dem CPU-Planer, der Laufwerksaktivität und den App-Threads. Systrace funktioniert mit allen Android-Plattformversionen, wir empfehlen jedoch Perfetto für Geräte mit Android 10 und höher.
Beide Berichte bieten einen Gesamtüberblick über die Systemprozesse eines Android-Geräts für einen bestimmten Zeitraum. Der Bericht untersucht auch die erfassten Tracing-Informationen, um festgestellte Probleme aufzuzeigen, z. B. UI-Verzögerung oder hoher Stromverbrauch.
Perfetto und Systrace sind interoperabel:
- Öffnen Sie sowohl Perfetto-Dateien als auch Systrace-Dateien in der Perfetto-Benutzeroberfläche. Öffnen Sie Systrace-Dateien mit dem Legacy-Systrace-Viewer in der Perfetto-UI. Klicken Sie dazu auf den Link Mit Legacy-UI öffnen.
- Konvertieren Sie einen Perfetto-Trace in das alte Systrace-Textformat. Verwenden Sie dazu das
traceconv
-Tool.
Leitfäden zur Systemverfolgung
Weitere Informationen zu Tools zur Systemverfolgung finden Sie in den folgenden Leitfäden:
- CPU-Aktivität mit CPU Profiler prüfen
- Hier erfährst du, wie du ein Profil zur CPU-Nutzung und Thread-Aktivität deiner App in Android Studio erstellst.
- System-Trace auf einem Gerät erfassen
- Hier wird erläutert, wie Sie einen System-Trace direkt auf jedem Gerät mit Android 9 (API-Level 28) oder höher erfassen.
- System-Trace in der Befehlszeile erfassen
- Definiert die verschiedenen Optionen und Flags, die Sie an die Befehlszeile für Systrace übergeben können.
- Perfetto mit ADB ausführen
- Hier erfahren Sie, wie Sie das
perfetto
-Befehlszeilentool ausführen, um Traces zu erfassen. - Kurzanleitung: Traces unter Android aufzeichnen
- Externe Dokumentation, in der beschrieben wird, wie das
perfetto
-Befehlszeilentool zum Erfassen von Traces erstellt und ausgeführt wird - Kurzanleitung: Traces unter Android aufzeichnen
- Der webbasierte Trace Viewer von Perfetto öffnet Perfetto-Traces und zeigt einen vollständigen Bericht an. Sie können Systrace-Traces in diesem Viewer auch mit der Option der Legacy-UI öffnen.
- Systrace-Berichte verwenden
- Listet die Elemente eines typischen Berichts auf, nennt Tastenkombinationen zum Navigieren im Bericht und beschreibt, wie Sie die Arten von Leistungsproblemen erkennen können.
- Benutzerdefinierte Ereignisse definieren
- Hier wird beschrieben, wie Sie benutzerdefinierte Labels auf bestimmte Abschnitte Ihres Codes anwenden, um die Ursachenanalyse in Systrace oder Perfetto zu vereinfachen.