Anwendungen entwickeln für Apple Watch & Co.

Best Practices für Smartwatch-Apps

17.11.2016
Von   
Mark Zimmermann leitet hauptberuflich das Center of Excellence (CoE mobile) zur mobilen Lösungsentwicklung bei der EnBW Energie Baden-Württemberg AG in Karlsruhe. Er weist mehrere Jahre Erfahrung in den Bereichen Mobile Sicherheit, Mobile Lösungserstellung, Digitalisierung und Wearables auf. Der Autor versteht es, seine Themen aus unterschiedlichsten Blickwinkeln für unternehmensspezifische Herausforderungen darzustellen. Neben seiner hauptberuflichen Tätigkeiten ist er Autor zahlreicher Artikel in Fachmagazinen.

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.