The 5 most important smartwatch platforms for developers

There’s a plethora of articles and resources for consumers to decide which smartwatch fits their needs best. Here at CodeFlügel, we are consumers too, but developers at heart. So we took a look at the smartwatch landscape as it is at the moment.

 

Smartwatch Landscape 2016

(c) gizmodo.com

 

 

What concerns us as developers first and foremost is the platform the hardware runs on. We identified the five platforms we see becoming more prevalent in the future:

  • watchOS, the operating system powering the Apple Watch
  • Android Wear, the Android spin-off for wearables
  • Tizen, the Samsung-backed operating system
  • Android, as in full-featured Android running on a wearable
  • Pebble OS, the operating system powering the Pebble watches

At the moment, another important distinction can be made when selecting platforms, but these lines will most likely blur in the future:

  • Smartwatch as a companion device: watchOS, Android Wear, and Pebble OS are intended to be used in combination with a smartphone.
  • Smartwatch as a stand-alone device: Some Tizen and Android wearables can be used as complete stand alone devices without a paired smartphone.

Which features can a developer expect?

When talking about a smartwatch, we can assume the following features (with a few exceptions) at the moment:

  • A touchscreen and/or buttons
  • Vibration, microphone, heart rate monitoring (ECG/PPG), ambient light sensor
  • WiFi, Bluetooth 4.0, NFC connectivity
  • Dust and water proof
  • 4 to 8GB onboard storage
  • Depending on the device, display resolutions from 272×340, 320×320, 312×390, up to max. 360×480
  • Exchangeable watch bands

Some smartwatches omit one or two of the features, others add special features like the following:

  • GPS, Bluetooth 4.1, other sensors (e.g. barometer, …)
  • Additional navigation methods like force touch, digital crown, rotating bezel, gestures
  • Additional stand-alone features
  • Ability to run apps natively on the watch
  • Display form other than square or rectangle, e.g. round or curved

Let’s take a closer look at the aforementioned platforms, starting with watchOS.

watchOS

The Apple Watch itself comes with a very rich set of features and more. From a developer’s perspective, however, it doesn’t expose many of those features to the common 3rd party developer and the use of the Apple Watch as a stand-alone device is very limited. With the introduction of watchOS 2, Apple has fixed many shortcomings of the initial launch version, but the NFC and Bluetooth APIs remain inaccessible for third party developers. While running apps natively on the watch is possible now, every watch must be connected to an iPhone and multiple pairings are not possible. Developing for watchOS requires an Apple Developer Account, Xcode, the WatchKit SDK, and using Swift or Objective-C.

watchOS Smartwatch Entwicklung

(c) digitaltrends.com

 

Android Wear

Android Wear is the Android spin-off for wearables, and as such it’s free to use as a platform for companies producing smartwatches. There’s a vast array of smartwatches powered by Android Wear, such as the Motorola Moto 360, LG G Watch, LG Watch Urbane, LG Watch R, Asus Zenwatch 2, Sony Smartwatch 3, and the Samsung Gear Live. Recent improvements on this platform have given third party developers much more freedom, as it is now possible to run apps natively on the watch, connect to the cloud and communicate with the phone over different WiFi networks (as long as the watch has internet access). While it is possible to access the Bluetooth API, the NFC API doesn’t seem to be implemented yet. An Android Wear smartwatch can be paired with Android or iOS devices and multiple smartwatches can be paired to one Android device at the same time. Developing for Android Wear requires Android Studio with the Android Wear SDK, using Java.

Android Wear Smartwatch Entwicklung

(c) Ben Greenwood

 

Tizen

Tizen is a (mostly) Samsung backed operating system and as such runs only on a few Samsung smartwatches. While, at the moment, it isn’t the most exciting platform for consumers, it looks very promising from a developer’s perspective. Third party developers have access to the complete Tizen API stack, including NFC and Bluetooth APIs. Tizen smartwatches can be paired with Android, iOS and Tizen devices and even support stand-alone functionality, depending on the model. Development requires the Tizen SDK, which includes a customized version of Eclipse, using HTML5, CSS, JavaScript, C, and C++.

Tizen Smartwatch Entwicklung

(c) businesswire.com

Android

Few smartwatch manufacturers have decided to use Android in its complete form on a smartwatch. However, there are some that do so. Running full Android on a smartwatch doesn’t really impose any more restrictions than running it on a smartphone, but the user experience might not be as good as on a smartwatch that runs an OS designed for its size. A good example of a smartwatch running Android is the Omate TrueSmart and its follow-up versions. From a developer’s perspective, it is like developing for an Android smartphone, though with size restrictions regarding the display. Development requires Android Studio with the Android SDK, using Java.

Android Smartwatch Entwicklung

(c) androidcentral.com

Pebble OS

Of all the platforms, Pebble OS is kind of the weird one out. The smartwatches it runs on all have an e-ink display, no touchscreen, feature only Bluetooth and no WiFi connectivity, and are all meant to be companion devices. They can be paired with Android and iOS devices, although only one smartwatch can be paired at a time. Writing apps for the Pebble can take a few forms, but it always includes a connected iOS or Android device with part of the app running in Pebble’s own companion app on the device. That is unless it is a very, very simple smartwatch app. Development requires the Pebble SDK, using C or JavaScript and, depending on the need for a companion app on the connected smartphone, Objective-C and/or Java.

Pebble OS Smartwatch Entwicklung

(c) getpebble.com

 

Conclusion

As we can see, which of those smartwatches will suit you best essentially depends on your requirements to it. For complex apps that require access to hardware features and/or stand-alone functionality, Tizen and full Android seem to be the best fits. The Pebble, Android Wear and watchOS smartwatches work best in cooperation with a connected smartphone. As these platforms improve the APIs, the exposure of their features to developers will grow. At the moment, however, developing for a smartwatch feels like having to commit to one of the major mobile platforms.

Images from digitaltrends.com, Ben Greenwood, businesswire.com, androidcentral.com, getpebble.com, gizmag.com