hero image

by Marco Paland, November 15

Thoughts About the new Android Watch-Face-Format (WFF)

Last year Google announced in cooperation with Samsung the new Android Watch-Face-Format, a declarative XML format without ANY code to describe the entire watchface functionality.

The Good

Despite of a lot of complains in the developer community, the introduction of a code free watchface format is a big and necessary step in the right direction.
Why that?
Because all the heavy rendering calculations can be offloaded to a powerful and energy efficient GPU.
Apple is doing the same on their watches since the beginning.
When it comes to rendering a watchface by code, there is a lot of bad, there are a lot of inefficient, sluggish, slow and battery draining watch faces out there, so having a kind of declarative format is a really good thing.

The Bad

A lot of watch faces out there need code to work properly. Think about a watchface which processes weather or health data and displays it in a fancy way.
The new WFF is codeless, all coded functions should be organized as complication data providers which need to be installed separately.

The Ugly

Watches, like the new Google Pixel 3 or Samsung’s Galaxy Watch Ultra, which have Wear OS 5 preinstalled are not able to use the old watchface format anymore. Yeah, hard to believe. All old non WFF watch faces are not listed in the PlayStore on theses watches either. Even worse, on latest watches like Googles Pixel 3, the whole runtime environment for old faces is missing - and other watches will do the same later on.

What’s next?

On the time of writing, its still possible to install old watch faces via an an app called Wear Installer 2 on OS 5 watches.

Samsung, Google, please help us!

Personally, I think this step is and was way too radical, cutting off an colorful, creative, highly customizable ecosystem. Why don’t mark WFF watch faces in the store with a green star and let them coexist with the older format? Let the user decide.
At least give the opportunity to install a watch face service from the store if the user want and need it.