Profil der App-Leistung erstellen

Eine App schneidet schlecht ab, wenn sie langsam reagiert, abgehackte Animationen anzeigt hängt oder verbraucht zu viel Strom. Die Behebung von Leistungsproblemen Profilerstellung deiner App oder das Identifizieren von Bereichen, in denen deine App ineffizient ist Nutzung von Ressourcen wie CPU, Arbeitsspeicher, Grafik, Netzwerk oder Gerät Akku. In diesem Artikel werden die Android Studio-Tools und -Techniken beschrieben, mit denen Sie häufig auftretende Leistungsprobleme beheben.

Um zu erfahren, wie Sie eigenständige Profiler ohne Android Studio IDE (nur Windows oder Linux), siehe Führen Sie den eigenständigen Profiler aus.

Voraussetzungen

Für das Erstellen eines App-Profils empfehlen wir Folgendes:

  • Eine App mit einer Release-Build-Variante mit dem Manifest profileable Konfiguration aktiviert, auch als profilierbare Anwendung bezeichnet. Standardmäßig haben Apps dass diese Konfiguration auf "true" gesetzt ist. Zum Prüfen oder Ändern dieser Konfiguration öffnen Sie das Manifest oder die AndroidManifest.xml-Datei Ihrer App und suchen Sie <application>-Abschnitt für die profileable-Manifest Konfiguration:

    <profileable android:shell="true" />
    
  • Ein virtuelles oder physisches Testgerät, auf dem API-Level 29 oder höher ausgeführt wird und Google Play

  • Android-Gradle-Plug-in 7.3 oder höher.

Profilierbare und zu debuggende Apps

Mit einer profilierbaren Anwendung können Sie die meisten gängigen Profilerstellungsaufgaben ausführen. Sie sollten jedoch eine debuggable App verwenden, wenn Sie Java/Kotlin aufzeichnen müssen oder einen Heap-Dump erfassen. Wenn Sie einen debuggbaren App-Prozess und ein Gerät mit API-Level 26 oder höher verwenden, können Sie in den zugehörigen Aufgabenansichten auch die Zeitachse Interaktion aufrufen. Dort werden Nutzerinteraktionen und App-Lebenszyklusereignisse angezeigt.

Eine debugfähige App basiert auf der debug-Buildvariante Ihrer App und ermöglicht die Verwendung von Entwicklungstools wie dem Debugger. Dies geht jedoch mit einigen Leistungseinbußen einher. Eine App, die sich profilieren lässt, basiert auf der release-Buildvariante Ihrer App und ermöglicht eine Reihe gängiger Profiling-Aufgaben ohne den Leistungsoverhead des Debug-Builds.

Profilfähige Anwendung erstellen und ausführen

So erstellen Sie eine profilierbare App in Android Studio und führen sie aus:

  1. Erstellen Sie eine Ausführungs-/Fehlerbehebungskonfiguration, wenn Sie noch kein Konto haben.
  2. Wählen Sie die Release-Build-Variante aus (Build > Build-Variante auswählen).
  3. Klicken Sie auf Weitere Aktionen > Profil „app“ mit geringem Overhead oder Profil „app“ mit vollständigen Daten („app“ ist der Name der Ausführungskonfiguration und kann bei Ihnen variieren). Informationen zur Auswahl der beiden Optionen finden Sie unter Anforderungen. Die App wird auf Ihrem Testgerät geöffnet und der Bereich Profiler wird in Android Studio geöffnet.

Wenn diese Anleitung nicht funktioniert, lesen Sie den Hilfeartikel Profilierbare App manuell erstellen und ausführen.

Profiling starten

So starten Sie eine Profilerstellungsaufgabe:

  1. Wählen Sie in Profiler auf dem Tab Home (Startseite) einen Prozess aus der Liste aus. . In den meisten Fällen sollten Sie den obersten Prozess auswählen, der für Ihre App.

    Tab „Startseite“ von Profiler
  2. Wählen Sie im Bereich Aufgaben eine Profiling-Aufgabe aus. Weitere Informationen zum finden Sie auf den anderen Seiten in diesem Abschnitt. Nicht alle Profiling-Aufgaben sind für jeden Prozess verfügbar. Wenn Sie nicht wissen, wo Sie anfangen sollen, können Sie sich einen Überblick über die Leistungsaktivitäten verschaffen, indem Sie Ihre App live prüfen.

  3. Wählen Sie im Drop-down-Menü Profiler-Aufgabe starten ab aus, ob die Profiler-Aufgabe vom Start entfernen oder an den Prozess anhängen, während er ausgeführt wird. Wenn Sie die Startzeit Ihrer App verbessern oder einen Prozess erfassen möchten, der beim Start der App ausgeführt wird, sollten Sie den Start einbeziehen. Andernfalls können Sie mit dem Profiling im aktuellen Zustand Ihrer App beginnen.

  4. Klicken Sie auf Profiler-Aufgabe starten. Die Aufgabe beginnt in einem eigenen Tab.

  5. Interagieren Sie mit Ihrer App, damit Aktivitäten ausgelöst werden.

  6. Beenden Sie die Aufzeichnung (falls zutreffend), warten Sie, bis sie geparst wurde, und sehen Sie sich den Ergebnisse.

Traces vergleichen, exportieren und importieren

Wenn Sie eine Profiling-Aufgabe beenden, wird sie automatisch auf dem Tab Frühere Aufzeichnungen im Bereich Profiler gespeichert. Sie können diese gespeicherten um die Ressourcennutzung in verschiedenen Szenarien zu vergleichen. Die Aufzeichnungen sind werden für die Dauer der aktuellen Android Studio-Sitzung gespeichert. wenn Sie und speichern Sie sie länger, indem Sie auf Aufzeichnung exportieren klicken, um sie zu exportieren. Nicht alle Trace-Typen können exportiert werden.

Wenn Sie einen Trace importieren möchten, z. B. aus einem vorherigen Android Studio-Lauf, klicken Sie auf dem Tab Frühere Aufzeichnungen auf Aufzeichnung importieren und wählen Sie die Tracedatei aus. Sie können auch eine indem Sie sie in das Editorfenster von Android Studio ziehen.

Aufzeichnungskonfiguration bearbeiten

Klicken Sie auf die Profiler-Einstellungen , um die Konfiguration der Aufzeichnung von Profiler-Aufgaben zu bearbeiten. Es gibt zwei Haupteinstellungen:

  • Bei Aufgaben mit Stichproben stellt das Stichprobenintervall die Zeit dar. zwischen den einzelnen Stichproben. Je kürzer das Intervall ist, desto schneller wird die maximale Dateigröße für die aufgezeichneten Daten erreicht.
  • Das Limit für die Dateigröße ist die Datenmenge, in die geschrieben werden kann. das verbundene Gerät. Wenn Sie die Aufzeichnung beenden, parst Android Studio diese Daten. und im Profiler-Fenster angezeigt. Wenn Sie das Limit erhöhen und eine große Menge an Daten erfassen, dauert es in Android Studio viel länger, die Datei zu parsen, und das Programm reagiert möglicherweise nicht mehr.