Google’s Wayne Piekarski has taken to Google+ to talk about the state of custom watch-faces for Android Wear, and while he’s doubtlessly impressed with what developers have come up with since the launch of the Android Wear SDK, he’s cautioning not to go too far. Not yet.
As we know, and as Wayne has commented, customisability has allowed Android to thrive, and no doubt will have the same positive effect for Android Wear as well. However, the platform isn’t quite ready for the kind of extensibility people want in the form of watch faces.. yet.
Custom watch faces are activities running inside another process.
However, they have some special considerations due to interactions with the stream and always-on ambient mode–including using a shorter peek card, moving the status indicators for battery and mute, and rendering the faces differently in ambient mode.
Right now, without an official API, making a really great watch face currently takes a fair bit of tweaking.
In a nutshell, the watch faces that exist at the moment are kind of kludges; they work because developers have figured out ways to emulate the proper behaviour, but it’s not being done in a consistent fashion. This means potentially inconsistent experience for users, and at the more extreme end, watch faces that might not work as well as they should.
They’re working on this, of course. Wayne tells us that a number of changes will become available once Android Wear is migrated from a KitKat base to Android L later this year. At the moment, though, Wayne has this advice for would be watch face developers:
As we work on finalizing the API, we would suggest not posting your apps publicly to Google Play until there is a stable, published API (we’d suggest using Alpha or Beta channels, available through the Play Developer Console, in the meantime). These changes mentioned above are coming soon and will make it easier for you to create great watch faces, but the existing unpublished API may not be compatible with the next Android Wear release, and no one wants to disrupt the experience for users in the future.