Leistung der Funktion „Compose“ unter Wear OS

Die Leistung unter Wear OS ist ein wesentlicher Aspekt für Apps, da viele Wear OS-Geräte im Vergleich zu größeren Mobilgeräten über begrenzte CPU- und GPU-Ressourcen verfügen. Du kannst dein Wissen aus Jetpack Compose nutzen, um deine App zu konfigurieren und zu entwickeln, um die Leistung mit Compose für Wear OS zu verbessern, da viele der Verfahren ähnlich sind. Du solltest aber wissen, wie du die Leistung deiner App unter Wear OS testen kannst.

Weitere Informationen zu Leistungskonzepten findest du in den Videos Best Practices zur Leistung und Ansprechende, energieeffiziente Apps für Wear OS auf YouTube.

Techniken zur Verbesserung der Leistung

Wenn du die Leistung deiner App genau nachvollziehen möchtest, kannst du sie im Releasemodus ausführen. Der Debug-Modus ist nützlich, um viele Probleme zu erkennen, verursacht jedoch erhebliche Leistungskosten und kann es schwierig machen, andere Codeprobleme zu erkennen, die die Leistung beeinträchtigen könnten. Außerdem werden im Fehlerbehebungsmodus 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.

Mache dich mit den Android Studio-Tools wie Live Edit, Composable Preview und dem Wear OS Emulator vertraut. Dies kann die Zeit für die Fehlerbehebung deiner App auf einer Uhr reduzieren, was deine Produktivität verbessern kann. Im Lieferumfang von Android Studio ist eine Smartwatch-AVD enthalten. Führe Tests mit der Funktion „Vorschau erstellen“ und „Live-Bearbeitung“ durch, bis deine App weitgehend wie erwartet funktioniert. Anschließend kannst du den Test auf einem Gerät durchführen, um die Leistung der App genau widerzuspiegeln.

Verwenden Sie die JankStats-Bibliothek, um Leistungsprobleme in Ihren Anwendungen zu verfolgen und zu analysieren. Ein Beispiel finden Sie im JankStats-Beispiel auf GitHub.

Basisprofil verwenden

Mit einem Basisprofil kannst du die Leistung deiner App verbessern, indem du Klassen und Methoden definierst, die für kritische Nutzerpfade erforderlich sind. Eine ausführliche Anleitung zu diesem Thema finden Sie unter Referenzprofile. Jede Composer for Wear OS-Bibliothek wird mit eigenen Profilregeln ausgeliefert. Wenn Ihre App von einer Bibliothek abhängt, werden die Bibliotheksprofilregeln automatisch mit dem APK Ihrer App zusammengeführt und bereitgestellt. Außerdem werden sie im Voraus auf dem Gerät kompiliert. Dies kann die Startzeiten verkürzen, ruckelige Frames reduzieren und die Leistung anderweitig verbessern.

Wenn Sie ein eigenes Profil für eine Anwendung definieren, prüfen Sie, ob es die Leistung verbessert, indem Sie MacroBenchmark-Tests schreiben. Ein Beispiel finden Sie auf GitHub unter Leistungsbeispiele.

Befehle für Referenzprofile

Es gibt einige nützliche Befehle, die Sie bei der Arbeit mit Basisprofilen unterstützen können. Ermitteln Sie zuerst den Status Ihres Profils. Führen Sie dazu folgenden Befehl aus:

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

Lautet der Status nicht status=speed-profile, wurden die Regeln noch nicht zur Optimierung der Anwendung angewendet.

Profilregeln für Wear OS erstellen werden mit einem Hintergrundjob angewendet, der ausgeführt wird, wenn das Gerät aufgeladen ist 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 vergangen ist, damit das Profilinstallationsprogramm das Profil im Hintergrund bootstrappen kann. Das dauert normalerweise 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 bei der Installation durchgeführt wird, finden Sie unter Basisprofil per Sideload übertragen.