Just a couple of days ago Apple released the highly anticipated WatchKit SDK, a software development kit for Apple Watch, which I think it is safe to say the most anticipated smartwatch out there. Now developers can dive into the development of new and fascinating apps for this device using the latest xcode beta release available on the developers.apple.com site.
From a developer’s perspective, the design and creation process of an Apple Watch app is different from creating other applications: Apple Watch requires the iPhone to be paired with, using it as a backend (model and controller). Resources like images, storyboards etcetera are stored directly on the Apple Watch, but the whole logic like the handling of button taps and responding to different kinds of events is processed on the iPhone. All the magic is behind the scene – One app, two different devices.
There are a few changes to what we are used to in iOS development:
Firstly, there’s no such a thing as AutoLayout and from now on, we use “Groups” – A system which handles controls placement automatically after we add items to a container.
Secondly, forget about animations. Instead you need to prepare each frame as a separate image: Yes, we’re back in the 90’s doing GIFs ;).
Thirdly, there are “Glances” and “Notifications”. “Glances” is something like the “Today” extension, well known with developers which gives you a quick overview of the content. Notifications are a little bit different from the from “full-sized” ones: They are split into two levels: One just with the app icon and some text and another with action buttons. What’s worth mentioning here is that we can send a user to a specific place in our app using Handoff, a feature that lets you “move” what you are currently doing from one Apple device to the other.
If you want to start designing your Apple Watch app, you should definitely visit the Designing for Applewatch page! Apple gives you (as always) a really well-written guide and prepares you to deliver the highest quality software. What kind of app will your next product be?
Michał is one of our iOS aficionados and we will be following his work and reflections in a series of blog posts right here at the 10Clouds blog. Stay tuned for more practical information and some tips and tricks on Apple Watch app development shortly!