Ich begann mit der Entwicklung meiner ersten Android Wear-Uhr und habe einige Probleme, das Konzept der Einstellungen zu verstehen.Persistente Einstellungen in Android Wear
Der Benutzer meiner Uhr sollte in der Lage sein, einige Einstellungen direkt auf der Uhr - z. verschiedene Farben.
Aber wie sollten diese Einstellungen auf der Uhr beibehalten werden? Alle Beispiele von Google verwenden Wearable.NodeApi.getLocalNode. Aber soweit ich das verstehen konnte, sollen damit Einstellungen zwischen verschiedenen (?) Uhren über das Internet synchronisiert werden. Zumindest nach der Anleitung auf https://developer.android.com/training/wearables/data-layer/index.html
Aber macht dieser Mechanismus auch die Einstellungen persistent, oder muss ich die Persistenz selbst implementieren (z. B. mit SharedPreferences).
Meine Ansicht zu diesem Thema ist, dass, wenn ich diese Einstellungen z. Über eine Benutzeroberfläche auf meinem Handy werden sie über die DataItems mit allen meinen Uhren synchronisiert - aber auf jeder Uhr muss ich diese Einstellungen speichern. Ist das richtig?
Vielen Dank für Ihre Erklärung. Ich werde diese Bibliothek benutzen - sieht gut aus. – user1894572
Tut mir leid, aber ich habe eine Follow-up-Frage: Ich verstehe, dass ich Einstellungen in SharedPreferences speichern und sie automatisch mit dem Telefon synchronisiert werden, z. Der PrefSyncService muss von einer Aktivität oder einem Dienst gestartet werden. Aber die Beobachtung wird von der CanvasWatchFaceService.Engine gezeichnet. Wie übertrage ich diese Änderungen korrekt an die Engine, damit ich diese Einstellungen übernehmen kann? Muss ich den DataApi für die Kommunikation vom PrefSyncService oder der ConfigActivity zur Engine verwenden? Oder sollte ich ein Ereignis in der Engine auslösen, damit die SharedPreferences erneut gelesen werden. Was ist der beste Weg, das zu tun? – user1894572
Ich verwende einen 'OnSharedPreferenceChangeListener'. Ich füge es meiner Antwort und dem Dokument auf dem GitHub Repo hinzu. – String