Leistung der Funktion „Compose“ unter Wear OS

Die Leistung unter Wear OS spielt bei Apps eine wichtige Rolle, 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 Anwendung zur Leistungsverbesserung mit Compose für Wear OS zu konfigurieren und zu entwickeln, da viele der Techniken ähnlich sind. Es ist jedoch wichtig zu wissen, wie du die Leistung deiner App unter Wear OS testen kannst.

Weitere Informationen zu Leistungskonzepten findest du auf YouTube in den Best Practices zur Leistung und zum Erstellen ansprechender, energieeffizienter Apps für Wear OS.

Techniken zur Verbesserung der Leistung

Wenn Sie genaue Informationen zur Leistung Ihrer App erhalten möchten, führen Sie sie im Releasemodus aus. Der Debug-Modus ist nützlich, um viele Probleme zu erkennen. Er verursacht jedoch 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 Anwendung zu verkleinern und zu optimieren. Weitere Informationen zum Entfernen nicht verwendeter Ressourcen finden Sie unter Ressourcen verkleinern.

Mach dich mit den Android Studio-Tools wie Live Edit, Composable Preview und Wear OS-Emulator vertraut. Dies kann den Zeitaufwand für das Debuggen Ihrer App auf einer Smartwatch reduzieren und Ihre Produktivität steigern. Android Studio wird mit einer Smartwatch-AVD ausgeliefert. Führen Sie Tests mit der Funktion „Vorschau erstellen“ und „Live-Bearbeitung“ durch, bis Ihre Anwendung weitgehend wie erwartet funktioniert. Testen Sie sie dann auf einem Gerät, um die Leistung der Anwendung genau wiederzugeben.

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

Basisprofil verwenden

Verwenden Sie ein Referenzprofil, um die Leistung Ihrer Anwendung zu verbessern. Definieren Sie dazu Klassen und Methoden, die für kritische Nutzerpfade erforderlich sind. Eine ausführliche Anleitung zu diesem Thema finden Sie unter Referenzprofile. Jede Compose for Wear OS-Mediathek enthält eigene Profilregeln. Ist Ihre App auf eine Bibliothek angewiesen, werden die Regeln für das Bibliotheksprofil automatisch mit dem APK Ihrer App zusammengeführt, verteilt und vorab auf dem Gerät kompiliert. Dies kann die Startzeiten verkürzen, langsame Frames reduzieren und anderweitig die Leistung verbessern.

Wenn Sie ein eigenes Profil für eine Anwendung definieren möchten, schreiben Sie MacroBenchmark-Tests, um zu prüfen, ob die Leistung dadurch verbessert wird. Ein entsprechendes Beispiel finden Sie auf GitHub unter Leistungsbeispiele.

Befehle für das Referenzprofil

Es gibt einige nützliche Befehle, die Sie zur Arbeit mit Referenzprofilen verwenden können. Ermitteln Sie zuerst den Status Ihres Profils, indem Sie folgenden Befehl ausführen:

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

Wenn der Status nicht status=speed-profile ist, wurden die Regeln noch nicht angewendet, um die Anwendung zu optimieren.

Compose for Wear OS-Profilregeln werden mithilfe eines Hintergrundjobs angewendet, der ausgeführt wird, wenn das Gerät aufgeladen 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 das Profilinstallationsprogramm das Profil im Hintergrund bootstrappen kann. Das dauert in der Regel etwa 40 Sekunden.

adb shell cmd package bg-dexopt-job

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

Informationen zu Situationen, in denen die Optimierung während der Installation durchgeführt wird, finden Sie unter Referenzprofil per Sideload übertragen.