Apple WatchKit – Watchify your iOS apps
The launch of Apple Watch and the public response to it seems set to repeat Apple’s record of outperforming its competitor; with stores expecting the Watch to be sold out in hours if not the first few days.
With the increase of BYOD in the enterprise and the popularity of Apple among professionals, you as a business manager cannot afford to ignore this opportunity. Testers of the Watch have talked about how they hardly have to use their iPhones now. This is because the major uses for most people using the iPhone can be done through the Watch.
This blog post will explain why companies should look into developing Apple Watch apps and how they can do it. Apple Watch is a big opportunity for retailers, app makers and enterprises to enhance the functionality of their apps.
WatchKit is the framework created by Apple to allow third-party developers to create apps for the Apple Watch. This SDK was released in November 2014 and Apple has also provided resources for developers to create Watch applications.
At Softweb Solutions, we have been experimenting with the Xcode 6.2, Apple’s developer toolset for Watch. The Xcode simulator is being used by our developers to create Watch apps.
An Apple Watch application requires an iPhone which is paired with the Apple Watch. The Watch and iPhone communicate to each other using Bluetooth and the WatchKit framework. The Watch app is unusable without the paired device and the WatchKit extension has to be installed on the iPhone.
There can be no standalone apps for the Watch.
The Watch application is basically an extension of the existing iOS application. When the user launches the application on the Watch, the Watch app through the WatchKit extension has access to the data of the iOS app. The installation part is easy. When the user downloads any iOS application, he will be asked if he wants to download the corresponding Watch application.
The app created in WatchKit has two parts: a WatchKit extension running on the iPhone and a set of user interface resources on the Apple Watch. On launching the app, the WatchKit extension runs in the background. It then updates the user interface and starts responding to the user interactions.
The WatchKit allows developers to extend the iPhone app in three ways: WatchKit apps, Glances, and Actionable Notifications.
WatchKit Apps: The Watch has a full user interface which can be used to launch, control and interact with the iPhone app.
Glances: As the name suggests, the users can be given a quick glance of information that they require. In the image given above, it’s a cooking app that is displaying the message. The Glances are read-only i.e. similar to push notifications.
Actionable Notifications: Forgot to switch off the smart blubs in your office? With actionable notifications, you can turn them off right from your Apple Watch. This is just one use among many for the Watch.
Both Glances and Actionable Notifications are optional. But most of the apps being created are making full use of these two functionalities. You can check out Watchware to see the types of apps that are being created for both consumer and business productivity use.
The small screen of the Watch does represent some limitations in the way the apps will be displayed and the interactions possible with it. One of the biggest limitations is that the WatchKit framework does not allow for complex gesture detection. Users will also not be able to have custom gesture recognizers. Animations are not as easy to implement on the Watch.
In order to receive notifications from the app, the Watch requires skin contact. This means it must be on the user’s wrist and locked. This is not necessarily a limitation but can also be viewed as a way to avoid message pileup.
The Digital Crown cannot support gestures. But it can be used for quick scrolling on pages with long content and pressing it will bring the user back to the Watch’s home screen.
For a detailed demonstration of how the WatchKit works and how you can Watchify your existing Apple apps, you can talk to our developers.