Blog: Building Applications for Apple Watch

Apple Watch, a wearable gadget, is a tool designed to make digital user experience more seamless. For customers, it provides a new level of comfort and device interaction, while for developers it is a way to make their app stand out by integrating the smartwatch.

In this article we will review some of the main points everyone should know before expanding to the Apple Watch realm.

The nativity of watchOS 2

watchOS 2, the newest version of the Apple Watch operating system, significantly alters the architecture of a Watch app.

architecture for watchOS

Architectural differences between OS: WatchKit extension code runs in the iPhone for watchOS 1, while for watchOS 1, the code is run in the Watch itself.

Before, the WatchKit extension used for Watch app development was run inside an iOS app, which made the interaction between the device and the kit slower than desired. The Watch had to constantly communicate with iPhone to properly work. Now, WatchKit is integrated into the Watch App itself, eliminating the need to always refer to iPhone to properly function.

However, it’s still not possible to develop a standalone Watch app: it must be connected with a companion IOS app prior to submission for review at Apple. The change in WatchKit positioning was made to improve the operating efficiency rather than make Apple Watch apps independent from iPhone. Now that the code runs natively, the execution time is improved.

Ways to extend your application to Apple Watch

There are currently four main ways to leverage the Apple Watch’s functionality: glances, notifications, complications and native apps.

  • Notifications

Notifications are a great way to remind users about your app when they don’t use it. A nice feature of Apple Watch is that notifications are more noticeable on the watches than they are on your phone, which is generally in your pocket. They are also arguably less irritating: a notification may be dismissed just by lowering the wrist.

Another perk is if your iOS app already makes use of notifications, you will not be forced to put any effort into integrating them into Apple Watch—the system will automatically send notification to the wearable device when it’s used, though the developer may still customize the interface if he or she wishes to do so.

  • Glances

Glances, sticking to their literal meaning, are designed for users to take a quick look at short and relevant summaries from Watch apps. They are a supplemental way to extend a native watchOS app and are not an obligatory feature to implement.

Glances are limited in what they can do: once clicked, a glance will lead the user to the respective app. It should only display important and interesting information because otherwise the user can easily remove your glass from display list.

To keep Glance information up-to-date, if your IOS app uses Background App Refresh, you can use it to update the contents of a glance. In watchOS 2, you can send the updated data to the user’s Apple Watch using Watch Connectivity framework.

  • Complications

Complications are small elements located on the user’s Watch face. They provide users access to relevant and small data such as: date, time, weather, and such.

Applications are built with the ClockKit framework. With the release of watchOS 2, Apple gave developers the ability to add their custom complications to a user’s interface, thus providing yet another way to interact with the user without him or her running the app in the foreground.

Furthermore, complications leverage a feature known as ‘time travel’, which is basically a line of complications’ data on which past, present, and future data instances are laid out. These pieces of information can be accessed with the digital crown of the watch, allowing the user to see upcoming events like weather for the next day.

Apple Watch Complications

 

  • WatchKit app

Last but not least, the most comprehensive way to make use of Apple Watch is to develop a native app. With the code running natively thanks to watchOS 2, apps now make for more appealing products, defying past criticisms for clumsiness and slowness in the past due to remote communication with iPhone.

WatchKit app

Our own research and experiments

The DB Best Applications Development team begun our own research with watchOS 2 to analyze what this operating system is capable of.

We were able to test various use cases and assess the potential the operating system holds. We hope our research will be as useful to you as it is to us.

 

If you are interested in more exciting products from our team, please take a look at our portfolio.