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. Anhand dieses Berichts können Sie ermitteln, wie Sie die Leistung Ihrer App oder Ihres Spiels am besten verbessern.
Eine umfassende Einführung in Tracing und Profiling finden Sie auf der Seite Tracing 101 in der Perfecto-Dokumentation.
Die Android-Plattform bietet mehrere Optionen zum Erfassen von Traces:
- CPU- und Speicher-Profiler in Android Studio
- Perfetto-Befehlszeilentool (Android 10 und höher)
- System-Tracing-Dienstprogramm
- 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 im Zusammenhang mit Touch-Ereignissen, Activity
-Änderungen und Garbage-Collection-Ereignissen.
Perfetto ist das plattformweite Tracing-Tool, das in Android 10 eingeführt wurde. Es ist ein ausgefeiltes Open-Source-Tracing-Projekt für Android, Linux und Chrome. Im Vergleich zu Systrace bietet es mehr Datenquellen und ermöglicht die Aufzeichnung beliebig langer Traces in einem binären Protokollpuffer-Stream. Sie können diese Traces in der Perfetto-UI öffnen.
Das System-Tracing-Dienstprogramm ist ein Android-Tool, mit dem Geräteaktivitäten in einer Tracedatei gespeichert werden. 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 älteren Android-Version werden Trace-Dateien im Systrace-Format gespeichert.
Systrace ist ein altes, 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 auf allen Android-Plattformversionen. Wir empfehlen jedoch Perfetto für Geräte mit Android 10 und höher.
Beide Berichte geben einen Überblick über die Systemprozesse eines Android-Geräts für einen bestimmten Zeitraum. Im Bericht werden auch die erfassten Informationen zur Fehlerbehebung geprüft, um Probleme wie Ruckler in der Benutzeroberfläche oder einen hohen Energieverbrauch hervorzuheben.
Perfetto und Systrace sind interoperabel:
- Öffnen Sie sowohl Perfetto- als auch Systrace-Dateien in der Perfetto-Benutzeroberfläche. Sie können Systrace-Dateien mit dem alten Systrace-Viewer in der Perfetto-Benutzeroberfläche öffnen, indem Sie auf den Link Mit der alten Benutzeroberfläche öffnen klicken.
- Mit dem Tool
traceconv
einen Perfetto-Trace in das alte Systrace-Textformat konvertieren
Leitfäden zur Systemaufzeichnung
Weitere Informationen zu System-Tracing-Tools finden Sie in den folgenden Leitfäden:
- CPU-Aktivität mit dem CPU-Profiler prüfen
- Hier erfahren Sie, wie Sie die CPU-Nutzung und die Threadaktivität Ihrer App in Android Studio erfassen.
- System-Trace auf einem Gerät erfassen
- Erläutert, wie Sie einen System-Trace direkt auf einem Gerät mit Android 9 (API-Ebene 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
- Beschreibung zum Ausführen des
perfetto
-Befehlszeilentools zum Erfassen von Traces. - Schnellstart: Aufzeichnungen auf Android-Geräten erstellen
- Externe Dokumentation, in der beschrieben wird, wie das
perfetto
-Befehlszeilentool zum Erfassen von Protokollen erstellt und ausgeführt wird. - Schnellstart: Aufzeichnungen auf Android-Geräten erstellen
- Die webbasierte Perfetto-Trace-Ansicht ö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 aufrufen
- Die Elemente eines typischen Berichts werden aufgelistet, Tastenkombinationen für die Navigation im Bericht werden präsentiert und es wird beschrieben, wie Sie Leistungsprobleme erkennen.
- Benutzerdefinierte Ereignisse definieren
- Beschreibt, wie Sie benutzerdefinierte Labels auf bestimmte Codeabschnitte anwenden können, um die Ursachenanalyse in Systrace oder Perfetto zu vereinfachen.