Developing for the Apple Watch

Wearables are being touted as the next big thing, and it's not too much of a stretch to imagine that within the next 10 years the majority of people who now own a smartphone will also own some form of wearable technology.

Up until recently, adoption rate has been pretty slow -- but the Apple Watch has changed all that; Android Wear has been around for nearly a year and most of the general public aren't even aware of it, but, thanks to Apple's slick marketing, you'd now be hard pressed to find someone who hasn't heard of the Apple Watch.

So we decided to jump in and build an Apple Watch app of our own, test the waters and find out what does and doesn't work when you move from working with a 4.5 inch screen to one that's only about one inch.

We've already written about some of the design challenges associated with the Apple Watch; in this post, we'll be focusing on the app from a development perspective and some of the obstacles we faced when building Flip On It.

Working with Apple's simulator

One of the main issues we initially had to deal with was developing for a piece of hardware we didn't physically have; instead, we had to rely on Apple's simulator to test anything we built.

The simulator is just that; it simulates the watch rather than emulating it, meaning the actual app could potentially behave differently. There were numerous drawbacks of having to develop this way: what if our app just didn't feel right on a physical device?

In our case when we eventually got our hands on a watch we found the animation in the first couple of spins (arguably the most important) wasn't quite as smooth as portrayed in the simulator.

Our advice? Get hold of an actual Apple Watch for testing as soon as you can!

Flip On It Dev

Restrictions of the WatchKit SDK

We had lots of great ideas around the theatrics of the app, including covering the watch to stop the spinning (like how you would do with a real coin), playing the metallic ring you hear when flipping a real coin just right, and swiping up on the screen to start the spin rather than just tapping.

But in the end none of these ideas could actually be implemented due to the restrictions of the WatchKit SDK. Apple don't allow you to perform gestures on the screen nor can you play your own sounds out of the speaker (it's for notifications only), and covering up the screen with your palm actually turns the watch display off!

Animation on the Apple Watch

To perform any form of animation on the Apple Watch, you need to provide the individual frames rather than, say, animating a single image to spin.

Initially we thought this would be a pain, but once we had all the frames needed and named correctly it took a very minimal amount of code to set the animation running.

The downside to this, however, is that the phone needs to transfer all of these frames over to the watch via Bluetooth, which is done at install time so greatly increases the time from downloading the app to actually being able to use it on the watch.

Flip On It Animation

Overall developing Flip On It for the Apple Watch was reasonably straight forward although we were quite limited in what we could do.

The Apple Watch and wearables in general are still in their infancy, but as adoption rate increases and the hardware becomes more powerful I'm sure we'll see developers do increasingly amazing things with the tech.

‘Emerging Digital Trends & Opportunities for Charities’ conference