Leistung der Funktion „Compose“ unter Wear OS

Die Leistung unter Wear OS ist ein wichtiger Faktor für Apps, da viele Wear OS-Geräte im Vergleich zu größeren Mobilgeräten nur begrenzte CPU- und GPU-Ressourcen haben. Sie können Ihr Wissen aus Jetpack Compose nutzen, um Ihre App mit Compose für Wear OS zu konfigurieren und zu entwickeln, um die Leistung zu verbessern, da viele der Techniken ähnlich sind. Es ist jedoch wichtig zu wissen, wie Sie die Leistung Ihrer App unter Wear OS testen.

Weitere Informationen zu Leistungskonzepten finden Sie in den YouTube-Videos Best Practices für die Leistung und Schöne, energieeffiziente Apps für Wear OS erstellen.

Methoden zur Leistungsverbesserung

Wenn Sie die Leistung Ihrer App genau nachvollziehen möchten, sollten Sie sie im Release-Modus ausführen. Der Debug-Modus ist nützlich, um viele Probleme zu erkennen, hat aber erhebliche Leistungskosten und kann es schwierig machen, andere Codeprobleme zu erkennen, die die Leistung beeinträchtigen könnten. Außerdem werden im Debug-Modus keine Baseline-Profile verwendet, was die Leistung weiter beeinträchtigen kann. Sie sollten auch den R8-Compiler verwenden, um Ihre App zu verkleinern und zu optimieren. Weitere Informationen zum Entfernen nicht verwendeter Ressourcen finden Sie unter Ressourcen verkleinern.

Machen Sie sich mit den Android Studio-Tools vertraut, darunter Live-Bearbeitung, Composable Preview und Wear OS-Emulator. So lässt sich die Zeit für das Entfernen von Fehlern in Ihrer App auf einer Smartwatch verkürzen und Sie können produktiver arbeiten. Android Studio wird mit einer AVD für Smartwatches ausgeliefert. Testen Sie mit Compose-Vorschauen und Live-Bearbeitung, bis Ihre App weitgehend wie erwartet funktioniert. Testen Sie sie dann auf einem Gerät, um die Leistung Ihrer App genau zu beurteilen.

Mit der JankStats-Bibliothek können Sie Leistungsprobleme in Ihren Anwendungen verfolgen und analysieren. Ein Beispiel finden Sie im JankStats-Beispiel auf GitHub.

Referenzprofil verwenden

Verwenden Sie ein Baseline-Profil, um die Leistung Ihrer App zu verbessern, indem Sie Klassen und Methoden definieren, die für kritische Nutzerinteraktionen erforderlich sind. Eine ausführliche Anleitung zu diesem Thema finden Sie unter Baseline-Profile. Jede Compose for Wear OS-Bibliothek wird mit eigenen Profilregeln geliefert. Wenn Ihre App von einer Bibliothek abhängt, werden die Bibliotheksprofilregeln automatisch zusammengeführt und mit dem APK Ihrer App bereitgestellt. Außerdem werden sie vorab auf dem Gerät kompiliert. So lassen sich Startzeiten verkürzen, Ruckler reduzieren und die Leistung insgesamt verbessern.

Wenn Sie ein eigenes Profil für eine App definieren, prüfen Sie mithilfe von Makrobenchmark-Tests, ob sich die Leistung dadurch verbessert. Ein Beispiel finden Sie unter Leistungsbeispiele auf GitHub.

Befehle für Baseline-Profile

Es gibt einige nützliche Befehle, die Sie bei der Arbeit mit Baseline-Profilen verwenden können. Prüfen Sie zuerst den Status Ihres Profils:

adb shell dumpsys package dexopt | grep -A 1 $PACKAGE_NAME

Wenn der Status nicht status=speed-profile lautet, wurden die Regeln zur Optimierung der App noch nicht angewendet.

Regeln für das Verfassen von Nachrichten für Wear OS-Profile werden über einen Hintergrundjob angewendet, der ausgeführt wird, wenn das Gerät geladen und inaktiv ist. Sie können dies manuell auslösen, indem Sie den folgenden Befehl ausführen, nachdem die App gestartet wurde und genügend Zeit verstrichen ist, damit der Profil-Installer das Profil im Hintergrund starten kann. Das dauert in der Regel etwa 40 Sekunden.

adb shell cmd package bg-dexopt-job

Sie können den vorherigen Befehl dann noch einmal ausführen, um zu prüfen, ob der Status jetzt speed-profile ist.

Informationen dazu, wie die Optimierung bei der Installation durchgeführt wird, finden Sie unter Baseline-Profil per Sideload installieren.