Anwendungen entwickeln für Apple Watch & Co.

Best Practices für Smartwatch-Apps

17.11.2016 von Mark Zimmermann  
Alle Funktionen auf die kleinen Helferlein zu bringen, ist kein gutes Vorgehen. Beachten Sie den Kontext und den Träger, um beim Entwickeln von Smartwatch-Apps erfolgreich zu sein. Hier einige Tipps.

Viele Softwareentwickler und Anwender erwarten bei Smart-Watches Computer am Handgelenk mit einem großen Funktionsumfang. Sie vernachlässigen dabei allerdings, dass es sich bei Apple Watch & Co. um ein sehr persönliches Gerät handelt. Einen Nutzen hat eine Smart-Watch daher nur, wenn sie in den passenden Situationen auf die Bedürfnisse des Anwenders reagiert und Interaktionen sowie Informationen selektiv und zielgerichtet anbietet. Die Hersteller haben dies bereits erkannt und ein neues Bedienkonzept entwickelt, das diese Anforderungen berücksichtigt.

App-Entwickler aufgepasst: Die Apple Watch ist einer Erweiterung des iPhones und soll diese nicht ersetzen.
Foto: Lukas Gojda - shutterstock.com

Aufgrund der Verbreitung erlauben Sie mir, mich bei meinen Ausführungen auf die Apple Watch als Beispiel zu beziehen. Die Apple Watch ist eine Ergänzung des iPhones und bedingt ein verändertes Nutzerverhalten. Anwender werden nicht auf die Uhr starrend durch die Gegend laufen. Deshalb ist es erforderlich, dass Watch-Apps Interaktionen und Informationen möglichst kurz und umstandslos abwickeln. Dauert die Interaktion länger, muss der Anwender zum iPhone greifen.

KISS - Keep it short and simple

Zu diesem Zweck stellt Apple etwa mit Handoff einen Mechanismus bereit, der den nahtlosen Wechsel zwischen den unterschiedlichen Geräteklassen erlaubt. Dadurch kann ein Anwender beispielsweise die Schlagzeile einer News auf seiner Uhr lesen und zum iPhone wechseln, auf dem die den Artikel bereits geöffnet hat.

Entwickler und Software-Architekten müssen die App-Oberfläche daher auf das Wesentliche reduzieren. Es dürfen auch nicht sämtliche Funktionen einer App den Weg auf die Apple Watch finden, sondern nur ein sinnvolles Subset. Als Vorgehensmodell bietet sich das KISS-Prinzip (Keep it short and simple) an. Bei allen Planungen muss die Frage im Vordergrund stehen, welche Interaktion der Anwender wirklich benötigt.

Flaches ansprechendes Design

Flat-Design ist auf mobilen Geräten längst nicht mehr nur ein Trend, sondern Standard. Die Schnörkel von einst in den Nutzeroberflächen sind durch klare Formen abgelöst worden. Dies gilt auch für die Apple Watch, die durch ihr eingeschränkten Nutzerinterface auch nur wenig Raum für technische und optische Schnörkel lässt.

Apps sollten ihre Informationen und Interaktionen kontrastreich darstellen, um die Lesbarkeit zu erhöhen und die Augen des Anwenders zu führen. Kontraste sorgen dafür, dass sich anklickbare Elemente von nicht anklickbaren Elementen abgrenzen und Informationen direkt ins Auge fallen. Dies bedingt auch eine Minimierung unterschiedlicher Farbtöne. Stark gesättigte Farben mit Helligkeits- und Sättigungs-Abstufungen helfen beim Umgang mit einem kleinen Display.

Abweichende Farbtöne dürfen nur dann verwendet werden, wenn diese die Aufmerksamkeit gezielt lenken sollen. Die Erwartungen und Gewohnheiten der Anwender bestimmen das UI-Design maßgeblich. Eine Anlaufquelle für entsprechende Piktogramme könnte die Webdatenbank Flaticon (http://www.flaticon.com) sein.

Wie bei all seinen Endgeräten legt Apple auch bei der Watch großen Wert darauf, eine barrierefreie Nutzung zu ermöglichen. Nutzer mit Farbsehschwäche oder schwachen Augen können den Anzeigenmodus anpassen sowie das beliebte Voice-Over nutzen. So gibt beispielsweise das Mickey-Maus-Zifferblatt beim Antippen die aktuelle Uhrzeit als Sprachausgabe aus. Ist eine solche Hilfe aktiv, greift sie übergreifend in der Watch und verändert das Erscheinungsbild von Apps. Dies hilft dem Anwender sowohl beim Navigieren durch Apps als auch beim Konsumieren der Inhalte. Entwickler sollten daher Apps auch für diesen Anwendungsfall optimieren.

Performance und Stromverbrauch optimieren

Nach einem von Apple angenommenen Nutzerverhalten ermöglicht der Akku eine Nutzungsdauer der Uhr von 18 Stunden. Die Datenkommunikation mit dem iPhone sowie die Art der Darstellung sind entscheidende Faktoren, die sich auf diese Betriebszeit auswirken. Auch ob der Anwender die integrierte GPS-Funktion oder die Sportprogramme verwendet, ist entscheidend. Wird die Uhr nur als Datenlieferant verwendet, schafft diese knapp drei Tage in der Akkulaufzeit.

Mit Einführung von WatchOS 3 findet auf der Apple Watch neben der reinen Darstellung der GUI nun auch eine rudimentäre Ausführung der Applikationslogik innerhalb der WatchKit-Extension statt. Weiterhin kommunizieren Apple Watch und iOS-App miteinander, um gegebenenfalls weitere Daten oder weitreichendere Berechnungen durchführen zu lassen. Dies erfolgt von der WatchKit-Extension auf der Apple Watch per WLAN (802.11 b/g/n 2,4 GHz) oder Bluetooth 4.0 drahtlos mit dem gekoppelten iPhone. Aus diesem Grund sollte jegliche Datenkommunikation auf das notwendigste reduziert werden und Datenmengen so klein wie nur möglich gehalten werden.

Aufgrund der geringen Datenübertragungsraten (Bluetooth bzw. WLAN) und der Verzögerungszeit (Latenz) innerhalb des getrennten Programmablaufs auf dem iOS Endgerät muss das App-Design entsprechend optimiert werden. Achten Sie hier beispielsweise auf die optimierte Bereitstellung von Bildern und Daten.

Damit Apps responsiver laufen (schneller reagieren und einsatzbereit sind), hat WatchOS 3 eine Art rudimentäres Multitasking eingeführt. Dieses Multitasking erlaubt es, ausgewählte Apps beziehungsweise Apps, die als Kompilation auf dem Ziffernplatt eingefügt worden, im Hintergrund vorzuhalten. Diese reagieren viel schneller und sind schneller einsatzbereit, als die nicht entsprechend vorgesehenen Apps. Auch eine alte Apple Watch fühlt sich damit wie eine neue Uhr an.

Das in der Apple Watch verbaute OLED-Display bietet leuchtende Farben und ein sattes Schwarz. Nutzen diese Displays vornehmlich dunkle Farben, fällt der Leistungsbedarf dieser Displays erheblich geringer aus, als bei der Darstellung von hellen und leuchtenden Farben. Entwickler können dies ausnutzen, um den Energieverbrauch einer App zu optimieren.

Auch wenn mit watchOS 3 nun Berechnungen direkt auf der Uhr stattfinden können, sollten Entwickler Datenmodelle bereits optimiert bereitstellen. Der Grund: Das Funktionsset von watchOS 3 fällt im Vergleich zu iOS deutlich geringer aus und tut sich entsprechend schwerer mit den vorzunehmenden Berechnungen. So sollten Entwickler beispielsweise Daten bereits typoptimiert bereitstellen, damit keine teuren Vergleichsoperationen auf der Uhr stattfinden müssen.

Last, but not least, können Entwickler mit einem einfachen Splashscreen eine schnelle Reaktionszeit der App simulieren. Diese einfache, aber effektive Möglichkeit, dem Anwendern eine reaktionsschnelle App zu suggerieren, darf als psychischer Effekt nicht unterschätzt werden. Natürlich sollten Entwickler ergänzend zu dieser "gefühlten Performanz" auch die echte Performanz stets im Blick haben.

Diskrete Benachrichtigungen

Selten sind Entwickler sich darüber bewusst, dass der Anwender ihre App direkt am Körper mit sich trägt. Zu viele Benachrichtigungen werden den Anwender eher frustrieren. Gesprächspartner und Anwender fühlen sich bereits bei zu starker Nutzung von Smartphones gestört, wenn der Anwender alle paar Minuten von einem Hinweiston unterbrochen wird. Dies wird mit Nutzung einer Apple Watch nicht einfacher. Mit dem Tragen eines solchen Wearables am Handgelenk wird erst deutlich, wieviele Benachrichtigungen auf den Anwender einprasseln.

Entwickler müssen lernen, mit ihrer App höflich zu sein und sollten versuchen, die Situation des Nutzers zu erkennen, um sich angemessen zu verhalten. Das Präsentieren der relevanten Information ist nicht dann notwendig, wenn diese vorliegen, sondern dann, wenn der Anwender diese benötigt.

Stellen Sie sich beispielsweise den Mehrwert vor, wenn eine App Ihre Benachrichtigungen auf das Trageverhalten des Anwenders abstimmt. So sind neben der Uhrzeit und den Bewegungsprofilen auch Pulsraten abrufbar, um den "Zustand" des Anwenders auf den richtigen Zeitpunkt auszuwerten. Gerade letztere werden von der Apple Watch regelmäßig abgefragt und ebenfalls in HealthKit hinterlegt. Nutzt eine App nun diese Information inklusive dem aktuellen Bewegungsprofil (Anwender läuft gerade oder steht), könnte eine Information genau dann korrekt platziert sein, wenn der Anwender "Ruhe" dafür hat.

Alle Informationen müssen dabei stets aktuell sein. So besitzen Checks (Glances) die Eigenart, dass diese ohne erneute Aktualisierung alte Informationen anzeigen. Entwickler müssen daher dafür Sorge tragen, dass für die korrekte Anzeige eines Glances zwingend eine Aktualisierung der notwendigen Informationen vollzogen wird.

Das Bedienkonzept der Apple Watch

Im Gegensatz zu Mitbewerbern im Markt der Wearables besitzt die Apple Watch einige Besonderheiten, die ich Ihnen kurz vorstellen möchte:

Screenshots einer App können einfach angefertigt werden, indem der Anwender die digitale Krone sowie den darunterlegenden Button gleichzeitig drückt. Diese Screenshots werden beispielsweise dafür benötigt, um die App in den AppStore zu stellen. Lassen sich diese Screenshots nicht anfertigen, ist die Option in der Watch-App auf dem iPhone wieder freizuschalten.

Die WatchKit-Extension ist in den entsprechenden iPhone-Apps (watchOS 1) oder direkt auf der Apple Watch App (ab watchOS 2) eingebettet. Ohne ein iPhone kann eine App auf der Apple Watch (mit eingeschränktem Umfang) ausgeführt werden. Die Uhr stellt daher auch weiterhin eine Erweiterung des iPhones dar, eine Art Verlängerung am Arm den Anwenders.

Die Apple Watch bietet dabei Sensoren für das Umgebungslicht, die Herzfrequenz, die Beschleunigung sowie ein Gyroskop. GPS-Daten lassen sich mit der Apple Watch Series 2 ebenfalls direkt am Handgelenk aufnehmen. Wird dieser Sensor nicht aktiviert, greift die Apple Watch auf die Sensoren des iPhones zurück. Aber auch das Mikrophon sowie die HealthKit- und HomeKit-Daten stehen den Apps der Watch zur Verfügung. Entwickler müssen dabei bedenken, welche Potentiale in der Hosentasche des Anwenders vorhanden sind, ohne das dieser sein iPhone wirklich herausnehmen muss oder es zwangsläufig unmittelbar bei sich führen muss (z.B. in seinem Zuhause).

There is an App for that

Seit watchOS 2 erlaubt Apple native Apps, die direkt auf der Apple Watch und temporär ohne iPhone ausgeführt werden können. Dies sorgt für deutlich geringere Latenzen und verbessert die Stabilität. Damit die Apple Watch auch ohne die Verbindung zum iPhone über das Internet kommunizieren kann, gibt Apple die Möglichkeit der WLAN Nutzung, direkt durch die Uhr, frei.

Native Apps bieten nun auch bessere Interaktionsmöglichkeiten. Diese können so beispielsweise auf die Digitale Krone (zur Selektionen von Werten in Listen), auf Sensoren (Herzfrequenz, Beschleunigungssensor) sowie auf Multi Media Funktionen (Audio/Video Playback, Lautsprecher, Mikrofon) und sogar Frameworks für aufwändige Grafiken und Animationen zugreifen. Die Daten der Sensoren können im übrigen auch dann noch gesammelt werden, wenn die App nicht aktiv ist.

Hierzu stellt watchOS 2 diese Daten beim nächsten Start der App zur Verfügung. Auch der Zugriff auf die Taptic Engine (Vibrationsmuster zur Information / Interaktionsfeedback) ist möglich. Komplikationen (Complications), kleine Informationen, können nun ebenfalls für die Zifferblätter erstellt werden.

Auch sonst hat Apple viele aus dem iOS-Umfeld bekannten Funktionen für die Entwickler im watchOS 2 Umfeld zugänglich gemacht: URL-Schemas ermöglichen es Apps nun System-Apps zu öffnen, um so beispielsweise die Telefon-App direkt zu starten. Die Sicherung sensibler Informationen wird über ein eigenes Security-Framework ermöglicht.

Auch eine Secure Enclave, ein sicherer Speicherbereich, der sich wie bei einem iPhone oder iPad um die Verschlüsselung aller Daten auf dem Gerät kümmert, ist in der Apple Watch enthalten.

Die Möglichkeiten, die Apple mit der Architektur der Apple Watch geschaffen hat, werden vielleicht damit deutlich, dass in den aktuellen MacBooks die TouchBar eine Art Apple Watch darstellt. Physikalisch wird hier der gleiche interne Chip verwendet und nur ein rudimentär angepasstes watchOS (eOS - Bridge).

App-Typen für die Apple Watch

Die Apps auf der Apple Watch können in verschiedene Kategorien unterteilt werden:

WatchKit Apps sind über den Homescreen der Uhr zugreifbar. Bei ihnen handelt es sich um eigenständige Anwendungen, die alleine oder in Zusammenarbeit mit dem iPhone individuelle Interaktionen abbilden und den derzeitig größtmöglichen Funktionsumfang bei den Apple-Watch-Apps abbilden können. Wie es sich gezeigt hat, haben annähernd alle Anbieter von beliebten Lösungen bereits eine mehr oder minder sinnvolle Erweiterung für die Apple Watch veröffentlicht (z.B. 1Password, Evernote, Foursquare, Facebook, Twitter etc.). Einige Anbieter wie WhatsApp fehlen leider jedoch noch.

Glances (deutsch: Checks) waren bis inklusive watch OS 2 eine Möglichkeit für den Entwickler, dem Anwender einer WatchKit-App relevante Informationen - ähnlich einer Push-Notification auf dem iPhone - auf der Apple Watch zu präsentieren, ohne die jeweilige App zu starten. Interagierte der Anwender mit einem Check, wird die zugehörige WatchKit-App gestartet. Checks stellten reine "Read-only-Informationen" dar. Mit watchOS 3 wurden diese Checks nicht mehr weiter unterstützt und sind im System nicht mehr zu finden.

Notifications auf der Watch stellen die Benachrichtigungen, wie sie von anderen iOS Geräten gewohnt sind, auf der Watch dar. Abgesehen davon kann mit diesen auch in gewohnter Weise interagiert werden, d.h. der Nutzer kann darauf basierend angebotene vordefinierte Aktionen starten. Notifications können dabei statisch (vom Entwickler vorab festgelegt) oder dynamisch aufgebaut sein. So kann ein Anwender auf eine WhatsApp Nachricht innerhalb der Notification antworten, jedoch keine neue schreiben, da es (wie erwähnt) keine WatchOS App gibt.

Complications (Apple-Deutsch: Komplikationen) sind kleine Informationen auf dem Watch-Face. Diese können über ein iPhone mit Daten vorausgefüllt werden. So kann das iPhone z.B. die Kalenderinformationen für zukünftige Ereignisse direkt an die Uhr geben. Dies erlaubt es dem Anwender, sich mit der Funktion "Timeshift" auf dem Zifferblatt durch das Drehen der digitalen Krone in den Informationen "zeitlich" zu bewegen.

Fazit

Ich möchte meine SmartWatch nicht missen. Benachrichtigungen, Wecker, kurze Interaktionen, Heimautomation, Gesundheitsdaten und vieles mehr sind nun "noch näher" an mir dran. Die (weitere) Abkopplung vom Smartphone sehe ich nicht als zielführend an, zumindest im Softwarebereich. In Hardwaresensoren, die durch einen permanenten täglichen Einsatz einen Mehrwert bringen, seien es Gesundheitsdaten (Sauerstoffgehalt im Blut, Körpertemperatur, etc.), Wetterdaten (Luftverschmutzung, -druck und Witterung) oder einfach nur eine genauere Positionierung (GPS, Barometer), sehe ich als größeres Potential. Sie sind für mich Treiber zukünftiger Innovationen. (mb)