It’s more than a year since the watch was released, however I bit the bullet and got my hands onto (or rather a watch on my hand). While I can write about how useful the watch is or how can we use it effectively, this article is all about developing for the watch.
UPDATE: Had a chat with the Apple engineers at WWDC, so might update or have a new article on this.
What can you do with an watch
Watch OS1 got a lot of folks excited and the entire app was run on the phone while the watch acted as a thin client that would simply display the results.
It was exciting when Watch OS2 was released which would allow the creation and execution of native code on the watch.
However even now the watch functions quite dependent on the iPhone. The watch does not have much to go with and is still pretty much (in terms of hardware) a thin client. Hopefully this will change following WWDC and the new releases.
Creating a Project
There is currently no way to create a native watch only application. So the projects you can create would be an App + WatchKit with the options to add extensions like Glances, Notifications, etc.
Running the app
The best thing about Xcode and developing for the Apple ecosystem specially iOS was the ease of use, press play and the simulator starts and you can see your app running. Now with the watch, press play and you can see your app running in the iOS simulator and the Watch simulator. This is all good BUT try to install the app onto the actual device and that is where the fun starts.
The app running on the watch simply shows the loading indicator that just spins for ever and then either times out or kills itself. Look up on the internet and forums on how to deploy to the watch, including archiving and exporting an Ad-Hoc build which is then installed to the device.
Signing the build with a certificate, creating Ad-Hoc builds, etc all have resulted in nothing but the spinning indicator.
I love the watch however as a developer I can only work with the simulator and not with the actual device. In addition to that not being able to develop native apps or even deploy to the watch. I am sure there is a lot more that is required from Apple in regards of the watch. It is a cool piece of technology but there is no idea about how long before you have to throw it out and get an updated one? Even though it has issues with developing for it.