Dies ist, was Sie über WatchKit wissen müssen

Im November hat Apple gehalten, was es versprochen hatte, und WatchKit für Drittanbieter freigegeben. Es hat nicht nur WatchKit veröffentlicht, sondern auch eine Reihe von Ressourcen für Entwickler bereitgestellt, einschließlich Richtlinien für die Benutzeroberfläche für Apple Watch-Anwendungen. In diesem Artikel werde ich Ihnen sagen, was Sie über WatchKit- und Apple Watch-Anwendungen wissen müssen.

Was ist WatchKit??

Sie denken vielleicht, dass WatchKit ein Framework ist, das alles enthält, was Sie zum Erstellen einer Apple Watch-Anwendung benötigen. Dies ist jedoch nur ein Teil der Geschichte. Die Geschichte ist etwas komplexer, weil eine Apple Watch-Anwendung nicht so ist, wie Sie denken.

WatchKit ist ein wesentlicher Bestandteil der Apple Watch für Drittanbieteranwendungen. Es enthält die Klassen zum Erstellen von Apple Watch-Anwendungen und stellt sicher, dass eine Apple Watch-Anwendung mit der entsprechenden WatchKit-Erweiterung kommunizieren kann. Warten. Was? Habe ich dir nicht erzählt, dass die Geschichte etwas kompliziert ist?

Die Architektur

Eines der wichtigsten Konzepte von Apple Watch-Anwendungen ist, dass eine Apple Watch-Anwendung ein iPhone benötigt, um ihre Arbeit zu erledigen. Um dieses Konzept zu verstehen, müssen wir uns die Architektur einer Apple Watch-Anwendung genauer ansehen.

Eine Apple Watch-Anwendung eines Drittanbieters kann nur dann ihre Arbeit verrichten, wenn die Apple Watch des Benutzers mit ihrem iPhone gekoppelt ist. Die Apple Watch und das iPhone kommunizieren über Bluetooth und das WatchKit-Framework miteinander. Das folgende Diagramm fasst diese Architektur zusammen.

Wie Sie im obigen Diagramm sehen können, ist das WatchKit-Framework für die Kommunikation zwischen der Apple Watch und dem gekoppelten iPhone verantwortlich. Aber wie funktioniert das??

Einfach ausgedrückt, ist Apple Watch nur für Folgendes verantwortlich:

  • Darstellung der Benutzeroberfläche
  • Abfangen von Berührungsereignissen

Die Apple Watch-Anwendung im obigen Diagramm enthält das Storyboard der Anwendung und die statischen Ressourcen, die die Apple Watch-Anwendung benötigt, um ihre Benutzeroberfläche darzustellen.

Die WatchKit-Erweiterung lebt und läuft auf dem iPhone und ist Teil der iOS-Anwendung, die der Benutzer auf seinem iPhone installiert hat. Der vorhergehende Satz berührt ein wichtiges Detail. Eine Apple Watch-Anwendung ist nichts weiter als eine Erweiterung einer vorhandenen iOS-Anwendung. Lassen Sie uns dies genauer untersuchen.

Was ist eine Apple Watch-Anwendung??

Sie fragen sich vielleicht, was eine Apple Watch-Anwendung ist und wie Sie eine erstellen können. Streng genommen ist eine Apple Watch-Anwendung die Komponente, die auf der Apple Watch läuft. Eine Apple Watch-Anwendung präsentiert die Benutzeroberfläche und fängt Berührungsereignisse ab.

Dies bedeutet, dass eine Apple Watch-Anwendung ohne das gekoppelte Gerät, auf dem die entsprechende WatchKit-Erweiterung ausgeführt wird, nicht verwendet werden kann. Die Apple Watch-Anwendung und die WatchKit-Erweiterung sind Teil der iOS-Anwendung, die der Benutzer auf seinem iPhone installiert.

iPhone erforderlich

Wie bereits erwähnt, ist es wichtig zu verstehen, dass Apple Watch-Anwendungen von Drittanbietern ein iPhone benötigen und ohne ein gepaartes iPhone, auf dem die entsprechende WatchKit-Erweiterung lebt, unbrauchbar sind.

Die gute Nachricht ist, dass das WatchKit-Framework sich um die wichtigsten Details kümmert. Es verbindet automatisch iPhone und Apple Watch und übernimmt die Kommunikation zwischen der Apple Watch-Anwendung und der WatchKit-Erweiterung. Die Kommunikation zwischen iPhone und Apple Watch wird über Bluetooth abgewickelt.

WatchKit-Erweiterung

Wenn der Benutzer eine Apple Watch-Anwendung vom Startbildschirm aus startet, startet das gekoppelte iPhone die WatchKit-Erweiterung für diese Anwendung. Jede Benutzerinteraktion wird an die WatchKit-Erweiterung weitergeleitet, und es liegt in ihrer Verantwortung, zu entscheiden, wie die Apple Watch-Anwendung auf die Benutzerinteraktion reagieren soll.

Apple Watch-Anwendung

Auf der Apple Watch werden nur das Storyboard und statische Ressourcen der Apple Watch-Anwendung installiert. Wie ich vorhin erwähnte, wird die Geschäftslogik von der Apple Watch nicht behandelt.

Dies mag zwar als große Einschränkung erscheinen, hat aber sicherlich Vorteile. Zum Beispiel hat die Apple Watch-Anwendung über die WatchKit-Erweiterung Zugriff auf die Daten der entsprechenden iOS-Anwendung. Die Apple Watch-Anwendung kann auch die Gerätefunktionen des iPhone nutzen, z. B. Standortüberwachung und Netzwerkkonnektivität.

Installation

Die Installation einer Apple Watch-Anwendung ist trivial. Wenn der Benutzer eine iOS-Anwendung installiert, die Apple Watch unterstützt, wird der Benutzer gefragt, ob er die entsprechende Apple Watch-Anwendung installieren möchte. So einfach ist das.

Blicke und Benachrichtigungen

Bei Apples Keynote im September haben Sie möglicherweise von Blicken und Benachrichtigungen gehört. Eine Apple Watch-Anwendung kann sich dem Benutzer auf drei Arten präsentieren.

Anwendung

Die offensichtlichste Darstellung einer Apple Watch-Anwendung ist, wenn der Benutzer die Anwendung über den Startbildschirm der Apple Watch startet. Dadurch wird die Benutzeroberfläche der Apple Watch-Anwendung gestartet und der Benutzer kann mit dieser interagieren.

Blicke

In Bezug auf die Funktionalität ähnelt ein Blick einer heutigen Erweiterung unter iOS. Es zeigt die für den Benutzer relevanten Informationen zur Apple Watch-Erweiterung. Der Hauptunterschied zu einer heutigen Erweiterung besteht darin, dass Blicke nur lesbar sind. Beachten Sie auch, dass es durchaus möglich ist, eine Apple Watch-Anwendung ohne Unterstützung von Blicken zu erstellen.

Benachrichtigungen

Neben der Standardbenutzeroberfläche für lokale und Remote-Benachrichtigungen können Apple Watch-Anwendungen auch eine benutzerdefinierte Benutzeroberfläche für lokale und Remote-Benachrichtigungen enthalten. Wie bei den Blicken ist dies für Apple Watch-Anwendungen optional.

Navigation & Interaktion

Die Apple Watch hat im Vergleich zu iPhone 6 und 6 Plus einen winzigen Bildschirm. Das Ergebnis ist, dass die Navigation und Benutzerinteraktion bei der Apple Watch anders und eingeschränkter ist.

Navigation

Das WatchKit-Framework umfasst derzeit zwei Navigationsarten: hierarchische und seitenbasierte Navigation. Hierarchisch Navigation ist sehr ähnlich wie UINavigationController übernimmt die Navigation unter iOS seitenbasiert Die Navigation ähnelt der Art und Weise UIPageViewController lässt den Benutzer zwischen den Inhaltsseiten blättern.

Benutzerinteraktion

Je mehr Sie über WatchKit lernen und mit diesem spielen, desto mehr fällt Ihnen auf, wie unterschiedlich es sich von iOS und den vom iOS-Ökosystem definierten Paradigmen unterscheidet. Die Benutzerinteraktion ist zum Beispiel recht unterschiedlich. Das WatchKit-Framework erlaubt keine komplexe Gestenerkennung und es ist auch nicht möglich, benutzerdefinierte Gestenerkenner zu verwenden.

Die Benutzerinteraktion auf der Apple Watch zu verstehen, ist ziemlich einfach. Es gibt fünf Arten von Benutzerinteraktionen:

  • Armaturen: Der Benutzer tippt auf den Bildschirm, um eine Tabellenzeile auszuwählen.
  • Vertikales Streichen: Der Benutzer scrollt den Inhalt einer Tabelle.
  • Horizontales Streichen: Der Benutzer navigiert zwischen Seiten in einer seitenbasierten Navigation.
  • Linke Kante streichen: Wie bei iOS können Sie durch Wischen vom linken Bildschirmrand nach rechts zum vorherigen Bildschirm zurück navigieren.
  • Force Touch: Einzigartig bei Apple Watch kann der Benutzer den Bildschirm drücken, um ein Kontextmenü anzuzeigen. Das Display der Apple Watch erkennt nicht nur die Berührung, sondern auch die Kraft.

Digitale Krone

Neben der Bearbeitung des Bildschirminhalts kann der Benutzer auch über die Digital Crown mit der Apple Watch interagieren. In Bezug auf Anwendungen von Drittanbietern kann Digital Crown nur zum Blättern durch Inhalte verwendet werden.

Einschränkungen

Bei der Entwicklung von Apple Watch-Anwendungen gibt es eine Reihe von Einschränkungen. Wir haben bereits gelernt, dass Benutzerinteraktion und Navigation auf der Apple Watch nicht so stark sind wie auf iOS, und es gibt einige weitere Einschränkungen, die Sie beachten müssen.

Animationen zum Beispiel sind auf der Apple Watch nicht so leistungsfähig oder einfach zu implementieren. Animationen werden erstellt, indem dem Benutzer eine Sequenz von Bildern angezeigt wird. Das dynamische Hinzufügen und Entfernen von Ansichten ist bei Apple Watch ebenfalls nicht möglich. In der Tat gibt es auf der Apple Watch keine Ansichten. Dies gilt auch für das automatische Layout.

Stattdessen macht das WatchKit-Framework die WKInterfaceController Klasse, die einen Bildschirm mit Inhalten verwaltet. Die auf der Apple Watch verwendeten Steuerelemente unterscheiden sich auch von denen unter iOS. Es gibt viele Ähnlichkeiten, aber es ist gewöhnungsbedürftig.

Diese Einschränkungen sollten keine Überraschung sein. Apple Watch unterscheidet sich vom iOS-Ökosystem, und es ist verständlich, dass sich die Muster und Paradigmen der einzelnen Systeme unterscheiden.

Ressourcen

Wenn Sie mehr über WatchKit erfahren möchten, haben Sie eine Reihe von Optionen. Ich empfehle Ihnen, sich zuerst das Einführungsvideo von Apple anzusehen. Wenn Sie tiefer in das WatchKit-Framework eintauchen möchten, ist das WatchKit-Programmierhandbuch Ihre nächste Station. Designer können an den Apple Watch Human Interface-Richtlinien interessiert sein.

Wenn Sie gerne loslegen möchten, sollten Sie Xcode 6.2 herunterladen und sich mit WatchKit die Hände schmutzig machen. Der Simulator von Xcode unterstützt Apple Watch, so dass Sie nichts daran hindern, Ihre erste Apple Watch-Anwendung heute zu erstellen.

Fazit

Apple hat Entwickler mit Informationen und Ressourcen überflutet. Während das WatchKit-Framework und seine Dokumentation Änderungen unterliegen, ist bereits klar, welche Möglichkeiten Apple Watch für Entwickler bietet. Mein Vorschlag ist, Xcode 6.2 herunterzuladen und heute mit dem WatchKit-Framework zu experimentieren.