Das Aufzeichnen von Geräteaktivitäten über einen kurzen Zeitraum wird als Systemablaufverfolgung bezeichnet. Bei der Systemablaufverfolgung wird eine Ablaufverfolgungsdatei erstellt, mit der Sie einen Systembericht generieren können. Dieser Bericht hilft Ihnen, die Leistung Ihrer App oder Ihres Spiels zu verbessern.
Eine umfassende Einführung in die Ablaufverfolgung und Profilerstellung finden Sie auf der Seite Tracing 101 in der Perfetto-Dokumentation.
Die Android-Plattform bietet verschiedene Optionen zum Erfassen von Traces:
- CPU- und Memory Profiler von Android Studio
- Perfetto-Befehlszeilentool (Android 10 und höher)
- Systemablaufverfolgung
- Systrace-Befehlszeilentool
Mit dem CPU-Profiler von Android Studio können Sie die CPU-Auslastung und Threadaktivität Ihrer App in Echtzeit überprüfen, während Sie mit der App interagieren. Sie können sich auch die Details in aufgezeichneten Methoden-, Funktions- und System-Traces ansehen. Der Speicher-Profiler bietet eine Übersicht über die Arbeitsspeichernutzung in Bezug auf Touch-Events, Activity Änderungen und automatische Speicherbereinigung Ereignisse.
Perfetto ist das plattformweite Ablaufverfolgungstool, das in Android 10 eingeführt wurde. Es ist ein anspruchsvolles Open-Source-Projekt zur Ablaufverfolgung für Android, Linux und Chrome. Im Vergleich zu Systrace bietet es eine größere Auswahl an Datenquellen und ermöglicht es Ihnen, beliebig lange Traces in einem binären Protokollpufferstream aufzuzeichnen. Sie können diese Traces in der Perfetto UI öffnen.
Die Systemablaufverfolgung ist ein Android-Tool, mit dem Geräteaktivitäten in einer Ablaufverfolgungsdatei gespeichert werden. Auf Geräten mit Android 10 (API-Level 29) oder höher werden Ablaufverfolgungsdateien im Perfetto-Format gespeichert, wie weiter unten in diesem Dokument beschrieben. Auf Geräten mit einer älteren Android-Version werden Ablaufverfolgungsdateien im Systrace-Format gespeichert.
Systrace ist ein von der Plattform bereitgestelltes Befehlszeilentool, mit dem Geräteaktivitäten über einen kurzen Zeitraum in einer komprimierten Textdatei aufgezeichnet werden. Das Tool erstellt einen Bericht, der Daten aus dem Android-Kernel kombiniert, z. B. den CPU-Scheduler, die Festplattenaktivität und App-Threads. Systrace funktioniert mit allen Android-Plattformversionen. Wir empfehlen jedoch Perfetto für Geräte mit Android 10 und höher.
Abbildung 1 : Beispiel für eine Perfetto-Trace-Ansicht, die etwa 20 Sekunden Interaktion mit einer App zeigt.
Abbildung 2 : Beispiel für einen Systrace-HTML-Bericht, der fünf Sekunden Interaktion mit einer App zeigt.
Beide Berichte bieten einen Überblick über die Systemprozesse eines Android-Geräts für einen bestimmten Zeitraum. Außerdem werden die erfassten Ablaufverfolgungsinformationen analysiert, um Probleme wie UI-Verzögerung oder hohen Energieverbrauch hervorzuheben.
Perfetto und Systrace sind interoperabel:
- Sie können sowohl Perfetto- als auch Systrace-Dateien in der Perfetto-UI öffnen. Öffnen Sie Systrace-Dateien mit dem Legacy-Systrace-Viewer in der Perfetto-UI, indem Sie auf den Link Mit Legacy-UI öffnen klicken.
- Konvertieren Sie einen Perfetto-Trace mit dem
traceconvTool in das Legacy-Systrace-Text format.
Leitfäden zur Systemablaufverfolgung
Weitere Informationen zu Tools für die Systemablaufverfolgung finden Sie in den folgenden Leitfäden:
- CPU-Aktivität mit dem CPU-Profiler überprüfen
- Hier erfahren Sie, wie Sie die CPU-Auslastung und Threadaktivität Ihrer App in Android Studio analysieren.
- System-Trace auf einem Gerät erfassen
- Hier wird erklärt, wie Sie einen System-Trace direkt auf einem Gerät mit Android 9 (API-Level 28) oder höher erfassen.
- System-Trace in der Befehlszeile erfassen
- Hier werden die verschiedenen Optionen und Flags definiert, die Sie an die Befehlszeilenschnittstelle für Systrace übergeben können.
- Perfetto mit adb ausführen
- Hier wird beschrieben, wie Sie das Befehlszeilentool
perfettoausführen, um Traces zu erfassen. - Kurzanleitung: Traces auf Android aufzeichnen
- Externe Dokumentation, in der beschrieben wird, wie Sie das Befehlszeilentool
perfettoerstellen und ausführen, um Traces zu erfassen. - Kurzanleitung: Traces auf Android aufzeichnen
- Der webbasierte Perfetto-Trace-Viewer öffnet Perfetto-Traces und zeigt einen vollständigen Bericht an. Mit der Option für die Legacy-UI können Sie in diesem Viewer auch Systrace-Traces öffnen.
- Systrace-Bericht verwenden
- Hier werden die Elemente eines typischen Berichts aufgeführt, Tastenkombinationen für die Navigation im Bericht vorgestellt und beschrieben, wie Sie Arten von Leistungsproblemen identifizieren.
- Benutzerdefinierte Ereignisse definieren
- Hier wird beschrieben, wie Sie bestimmten Abschnitten Ihres Codes benutzerdefinierte Labels zuweisen können, um die Ursachenanalyse in Systrace oder Perfetto zu erleichtern.
- KI-gestützte Analysefunktionen verwenden
- Hier wird erklärt, wie Sie KI-gestützte Funktionen mit Ihrem bevorzugten KI-Agenten verwenden können, um Perfetto-Traces zu analysieren und benutzerdefinierte SQL-Abfragen zu erstellen.