Möglichkeiten und Grenzen der Wear-OS-Plattform – Teil 2

Watchface – das Gesicht der Uhr

Watchface – das Gesicht der Uhr

Möglichkeiten und Grenzen der Wear-OS-Plattform – Teil 2

Watchface – das Gesicht der Uhr


Der wahrscheinlich wichtigste Interaktionspunkt zwischen einer Smartwatch und ihrem Benutzer ist die als Watchface bezeichnete Applikation, die für die Anzeige der Uhrzeit zuständig ist. Sie kann grafisch oder manuell entwickelt werden. Dabei begegnet der Entwickler einigen Einschränkungen.

Zum Verständnis vieler der in diesem Artikel genannten Einschränkungen ist es hilfreich, einen Blick in die Vergangenheit zu werfen, vor allem auf den in Abbildung 1 gezeigten Homescreen von Microsofts mittlerweile lang eingestellter PocketPC-Plattform. Microsoft ermöglichte Entwicklern damals die Realisierung von Widgets, die mehr oder weniger beliebige Inhalte auf dem Homescreen anzeigen konnten.

hanna_wear_os_2_1

Abb. 1: Jede Zeile dieses Bildschirms entstand durch ein Plug-in

Dazu wurde ein Framebuffer zur Verfügung gestellt, in dem die C++-Logik des Entwicklers tun und lassen konnte, was sie wollte. Die Konsequenz dieser Vorgehensweise: Schlecht programmierte Applikationen verschwendeten Unmengen an Rechenzeit, was sich auf Akkulaufzeit und – im schlimmsten Fall – sogar auf die Reaktivität der Plattform auswirkte.

Einen anderen Weg geht Google mit den mit Wear OS 5 eingeführten Einschränkungen, die wir uns im Folgenden ansehen.

XML über alles

Spätestens seit Symbian 3 einen „Homescreen“ einführte, hat sich das Entmündigen des Entwicklers als Design Pattern etabliert. So gut wie alle modernen Homescreens oder sonstigen Plug-in-Systeme funktionieren nach dem in Abbildung 2 gezeigten Schema.

hanna_wear_os_2_2

Abb. 2: Schema moderner Homescreens

Applikationen, die nach der Integration in eine dieser neuartigen Oberflächen streben, müssen ihre Inhalte in einem standardisierten Beschreibungsformat – heute üblicherweise XML – anliefern. Die Darstellung erfolgt ausschließlich durch einen Betriebssystemservice, den der Hersteller nach Möglichkeit zu optimieren sucht.

Im Fall von Wear OS ist die Situation insofern schwierig, als auf Wear OS 5 basierende Geräte nur noch jene Watchfaces unterstützen, die auf XML-Technologie setzen [1]. Ältere, auf Compose basierende Apps dürfen nur auf Geräten mit Wear OS 4 verwendet werden; über kurz oder lang plant Google außerdem, derartige Applikationen aus dem Vertrieb im Play Store zu nehmen.

Grafisches Design mittels Watchface Studio

Googles Entscheidung, im Bereich der Smartwatches enger mit Samsung zusammenzuarbeiten, dürfte sich auch hinsichtlich des XML-Formats auswirken – Samsungs Tizen Smartwatches verwenden eine entsprechende Technologie nämlich seit einiger Zeit. Wer einst mit Tizen experimentiert hat, dürfte die erste Möglichkeit zur Erzeugung von XML Watchfaces deshalb bereits kennen: das Samsung Watchface Studio, zu finden unter [2].

In den folgenden Schritten wollen wir mit Windows 11 experimentieren, weshalb wir die Datei WatchFaceStudio_1.6.10.exe herunterladen und wie gewohnt installieren. Beim ersten Hochfahren fragt die Software nach einem Arbeitsverzeichnis; da der Autor den String „tamha“ als Benutzername vergibt, lautet die Vorgabe C:\Users\tamha\WatchFaceStudio.

Nach dem erfolgreichen Start der IDE bietet sich das Anklicken des Knopfs New Project an. Watchface Studio reagiert darauf mit der Einblendung eines Fensters, in dem der Projektname vergeben werden muss. Nach der Bestätigung finden wir uns in der in Abbildung 3 gezeigten Ansicht wieder, die die Bearbeitung der XML Watchfaces ermöglicht.

hanna_wear_os_2_3

Abb. 3: Watchface Studio arbeitet vollständig grafisch

Am wichtigsten ist dabei das links eingeblendete Menü, das – derzeit noch leer – eine Übersicht über alle im Watchface angelegten Elemente bietet. In der Mitte befindet sich der Arbeitsbereich, während rechts – Ähnlichkeiten zu Visual Studio und Co. sind natürlich rein zufällig – die Eigenschaften des gerade selektierten Elements zur Modifikation zur Verfügung stehen.

Zu beachten ist außerdem, dass es links zwei Tabs gibt – das Normal-Tab beschreibt dabei den Zustand des Watchface in aktiver Behandlung, während die Always on-Rubrik den funktionsreduzierten Zustand beschreibt, in den das Betriebssystem das Watchface versetzt, wenn eine Zeit lang keine Benutzerinteraktionen stattgefunden haben.

Das oben in der Mitte eingeblendete Plussymbol öffnet dann das in Abbildung 4 gezeigte Menü, das die im XML-Format angelegten Elemente auflistet. Fürs Erste entscheiden wir uns für ein Objekt vom Typ Time | Analog clock. Daraufhin erscheint ein neues Element in der Vorschau (Abb. 5).

hanna_wear_os_2_4

Abb. 4: Der XML-Standard bietet verschiedene Elemente an

hanna_wear_os_2_5

Abb. 5: Das Clock-Symbol ist am Platz

Zu beachten ist, dass die neu eingefügten Elemente anfangs zusammengefasst dargestellt werden; die sechs Unterkategorien des Elements sind erst dann sichtbar, wenn man sie in der Baumansicht öffnet.

Da wir hier ein vorgefertigtes Widget platziert haben, kümmert sich Watchface Studio um das Hinzufügen der Interaktivität. Eine lokale Simulation lässt sich durch Öffnen des in Abbildung 6 gezeigten Run-Tabs bewerkstelligen. Von Haus aus ist es nicht eingeblendet, ein Klick auf das Flyout neben dem Einstellungstab löst das Problem.

hanna_wear_os_2_6

Abb. 6: Dieses Tab erlaubt „interaktive Tests“

Zwecks Einsparung von Rechenleistung auf der Entwicklerworkstation ist das Run-Tab normalerweise nicht animiert. Die auf der Unterseite des Arbeitsbereichs eingeblendete Scrollbar erlaubt durch Verschieben eines Sliders das Festlegen des Zeitpunkts, der in der Vorschau zu rendern ist. Eine dynamische Darstellung erreichen wir durch...