Entwicklung von Apps für watchOS 2, Teil 2

Apple hat bei watchOS 2 die zugrunde liegende Architektur signifikant überarbeitet. Nun lässt sich beispielsweise Multimedia in den Apps nutzen. Aber welche konkreten technischen Möglichkeiten ergeben sich zusätzlich?

Know-how  –  0 Kommentare
Entwicklung von Apps für watchOS 2, Teil 2

(Bild: Apple)

Neben der in einem früheren Artikel besprochenen Digital Crown ist die erstmals in der Apple Watch verbaute Taptic Engine ein weiteres wichtiges Hardwareelement von Apples Smartwatch. Sie dient dazu, Nutzer mittels leichtem "Antippen" auf das Handgelenk auf Neuigkeiten hinzuweisen; sie spüren also, wenn gerade eine neue Nachricht eingegangen ist oder sie während eines Workouts ein bestimmtes Ziel erreicht haben, selbst wenn die Apple Watch keinen Ton von sich gibt.

Ab watchOS 2 können Entwickler nun auch das Auslösen der Taptic Engine in eigenen Apps implementieren. Die Verwendung ist denkbar einfach: Die als Singleton ausgelegte Klasse WKInterfaceDevice verfügt seit watchOS 2 über die neue Methode playHaptic:. Sie ist für das Auslösen der Taptic Engine verantwortlich und erwartet einen Parameter vom Typ WKHapticType. Dabei handelt es sich um eine Enumeration, die über insgesamt neun vordefinierte Vibrationen mitsamt zugehörigem Sound verfügt. Diese vordefinierten Werte sind im Folgenden inklusive ihres Einsatzzweckes
beschrieben:

  • Notification: Benachrichtigung über eine neu eingegangene Notification
  • DirectionUp: beschreibt die Erhöhung eines bestimmten Werts
  • DirectionDown: beschreibt die Verringerung eines bestimmten Werts
  • Success: weist auf den Erfolg einer Aktion hin
  • Failure: weist auf den Fehlschlag einer Aktion hin
  • Retry: weist auf den Fehlschlag einer Aktion hin mit der Option, sie noch einmal direkt wiederholen zu können
  • Start: deutet den Beginn einer Aktion an
  • Stop: deutet das Ende einer Aktion an
  • Click: weist auf einen Zwischenpunkt bei der Auswahl verschiedener Elemente hin

Um ein ganzheitliches Nutzererlebnis beim Verwenden der Apple Watch zu gewährleisten, legt Apple großen Wert darauf, dass die genannten Haptic-Types ausschließlich für den angedachten Zweck verwendet werden. Halten sich alle Entwickler daran, führt das dazu, das Nutzer selbst bei Verwendung ganz unterschiedlicher Apps bei Feedback mittels Taptic Engine unterscheiden können, um welche Art von Feedback es sich handelt.

Das folgende Listing zeigt ein paar beispielhafte Aufrufe zum Verwenden der Taptic Engine in eigenen watchOS-Apps.

class MyInterfaceController: WKInterfaceController {
func useTapticEngine() {
WKInterfaceDevice.current().playHaptic(.Notification)
WKInterfaceDevice.current().playHaptic(.Success)
WKInterfaceDevice.current().playHaptic(.Start)
WKInterfaceDevice.current().playHaptic(.Stop)
WKInterfaceDevice.current().playHaptic(.Click)
}
}