Google wants to bring Android to everything from phones and watches, to cars
and smart television sets. First off, in the interest of full disclosure, I have to say that I am somewhat
biased when it comes to smart TV platforms, so let's get that out of the way. I think most, if not all smart
TV platforms on the market are downright terrible, but that's just me. Google thinks it can do better and I
am inclined to believe that it really can do better, or at least I hope it can, both as a consumer
and a tech enthusiast.
So what is Android TV? Many people confuse it with Google TV, a defunct
platform released in 2010. It was developed by Google, Sony, Intel and Logitech, but it never gained
traction. It was officially replaced by Android TV in mid-2014, and this new platform is a lot more exciting
for consumers and developers alike.
Unlike Google TV, Android TV is much closer to standard Android. It runs
Android 5.0 (at least in the initial launch version) and can be used on new TVs, as well as on standalone
devices. This is good news since Android TV will end up on inexpensive Android TV boxes and sticks, bringing
the same user experience to millions of old TVs. In fact, the first device to feature Android TV is not a TV
at all, it is Google's Nexus Player. This also addresses one of the biggest complaints levied against
various smart TV platforms in the past: lack of consistency. Android TV should bring a nearly identical user
experience to all compatible devices.
Will Not Be Televised, It Will Be Streamed
As far as new features go, Android TV also introduces support for Google Cast
. You may be familiar with Google Cast
from the Chromecast stick. The technology is already supported by hundreds of apps and services, with more
on the way. Google Cast allows Android TV devices to receive streamed content from a range of devices.
Implementation is straightforward using the Google Cast API, and you will find all the info you need on the
Google Cast dev site
Does this mean Google wants to turn cable companies into "dumb pipes" and
simply use their bandwidth rather than content? Not really, but anything is possible, especially as smart TV
However, streaming is not Google's only trump card.
Android TV also creates new opportunities for communication, gaming, home
automation and much more. Android TV could become a hub for all sorts of connected devices, running Android
or other platforms. You could use it to see who is at the door, adjust your air conditioning or connected
thermostat, maybe even sync your RGB LED lightbulbs with your TV while watching some 80s action classics.
Granted, some of this stuff may sound gimmicky, but Android TV is not for
gimmicks; it won't be a niche platform like Android Wear or Android Auto. Not long ago, only enthusiasts
bought smart TVs and smartphones, but feature phones and traditional TVs are all but gone at this point.
Android TV will end up on TVs in millions of homes; there's really no doubt about it.
This is good news for Android developers since the user base is sure to grow
fast, thus mitigating the risk of tackling a new platform for Android TV app development.
Android TV - What's Under The
As far as hardware goes, we will see Android standard FHD screens (1080p) and
UHD (3840x2160). There is also a good chance some manufacturers will also bring Android TV to curved 21:9
units sometime in the future, but for the time being the focus will be on 16:9 panels. UI designers need to
keep this in mind.
Since it's based on Android 5.0 (API level 21) and uses ART, most Android TV
hardware will feature 64-bit processors. The Nexus
is based on an Intel Atom processor, a lot of upcoming Android TV's will sport MediaTek's MT5595
, while Nvidia's Shield console uses the Tegra X1 processor. Intel's and
Nvidia's System-on-Chip (SoC) offerings are based on 64-bit CPU cores, while MediaTek employs 32-bit
Cortex-A17 and Cortex-A7 cores.
All Android TV hardware will have to support HEVC and VP9 decoding, and
chances are most of these chips will be capable of handling several non-UHD streams at once. Delivering UHD
content at 60 frames per second should not be a problem, either. Fast, dual-band wireless is on board as
well, providing enough bandwidth for UHD streams. Android TV hardware platforms will rely on a lot of
middleware and will comply with multiple broadcasting standards to cover every region and market. There is
nothing exotic about the hardware and developers don't have much to worry about. A lot of Android 5.0 DNA
ensures a smooth transition on the software front, but are some things to keep in mind.
Android Goes Big Screen
What does all this mean for developers ? Android TV development sounds
straightforward, but a quick glance at the spec does not paint the full picture. While many developers and
designers should feel right at home, they also need to make sure that users feel at home - after all,
Android TV is designed for the living room.
Let's start with the good news. Most Android TV devices will use 16:9 panels
in just two resolutions, so a lot of stuff will be standardised. This will help improve consistency and
should make testing somewhat easier.
- Working in one aspect ratio, 16:9 (although 21:9 devices may appear in the
- Designing for two resolutions, FHD and UHD, only the density varies
depending on the screen size.
- Using a lot of standardised UI elements.
- No need to think about touch input.
- Not a lot of sensors to deal with.
- Power efficiency is not relevant.
However, Android TV app development also brings a number of new challenges to
tackle. Since there is no touch input on the TV itself (although tablets and phones could be used for
input), we will have to deal with other input methods such as remote controls, third-party airmouse units,
keyboards, game controllers, and so on. There is also a lot of legacy Android stuff that needs to go (for
example, there's no portrait mode). Pixel density variations are much bigger, lack of touch input may be
problematic for some developers, and so on.
Here are some of the challenges:
- Support for multiple controllers at once.
- Support for different types of controllers, i.e., standard remote and game
- Few sensors on board.
- Overscan may be an issue on some devices.
- Vastly different pixel density even in same resolution (TVs come in a lot
more sizes than tablets and phones).
- Remove unnecessary elements.
Let's take a closer look at some of these issues. Since Android TVs will be
used as media hubs, chances are people will want to use more than one controller on them. Some may want a
Bluetooth keyboard, while others might get two game controllers for some multiplayer action. The good news
is that you probably won't need custom code to implement support for additional controller inputs since
standard Android game controller input can be used for the UI and apps such as games. However, you may need
to address more than one input device, and in case you need to add support for more exotic controllers, some
tweaking may be necessary.
Most Android TVs will ship with a limited sensor package. Why would you need
GPS on a TV set? This is why it is necessary to disable support for hardware features unavailable on TV
devices. There is a lot of detailed information on how to sort everything out; basically, just flag
unsupported sensors as false and that's it. You also need to go through the Android app manifest
and check whether or not it will exclude Android TV devices due to their lack of features.
For example, the standard
ACCESS_FINE_LOCATION permission uses
the GPS. Since there is no GPS on board, your app manifest should include the following:
Therefore, you will need to change
. The same principle applies to other aspects of the platform and details are
available on Google
. Another resource you may want to check out is Nvidia's Android TV Developer
. In case you are thinking about reusing stuff from other Android projects, this is worth
keeping in mind, otherwise you might end up with an app that tries to open a menu in portrait mode on a TV,
which brings me to the next point:
Although Android TV is basically Android 5.0, the user interface has little to
do with stock Android as we know it. Smart TV platforms employ a "10-foot" approach, which basically means
the user experience is optimised for 10 feet from the screen, roughly ten times more than on a smartphone or
The "10 foot" concept predates smart TV platforms. It was also used in
on-screen-display (OSD) design, game console dashboard design, and was usually employed by mainstream 5.1
surround systems. So what does it mean for user experience and UI design?
Well, designers need to make sure everything looks OK on a range of different
panels, from inexpensive 37-inch 1080p TVs to 65-inch or 75-inch monsters in UHD. The UI has to work well in
FHD and UHD, regardless of screen size. While we are dealing with just a couple of different resolutions,
pixel density (pixels per inch or ppi) varies greatly.
Here are a few examples:
- 42-inch UHD panel - 105ppi
- 42-inch FHD panel - 52ppi
- 50-inch UHD panel - 88ppi
- 50-inch FHD panel - 44ppi
- 55-inch UHD panel - 80ppi
- 65-inch UHD panel - 67ppi
- 32-inch FHD panel - 69ppi
It is unlikely we will see UHD panels on Android TVs with panel sizes in the
30-40 inch range, but we should see a lot of FHD devices working in this segment. Many consumers will simply
go out and buy new Android TV boxes rather than replace existing 1080p TV sets. Although many TV makers will
start using 4K panels on 40+ inch models, developers still need to think about legacy support.
This is also why we need to keep in mind that over scan can be an issue. A lot
of TVs retrofitted with Android TV set top boxes will lose some screen real estate toward the bezel. Anyone
familiar with video already knows a thing or two about safe frames (action safe and title safe); this is a
throwback to the days of standard definition CRT television sets, but it is still a good idea to stay on the
safe side and avoid placing any important UI elements near the edge. Try to keep at least 5 percent of the
area free of any important content, and use an even safer margin for really important UI elements; 10
percent should do the trick, but if you want to be completely safe, you can go with even more.
Keep in mind that this particular issue does not exist on tablets or
smartphones. Luckily, that doesn't mean Google didn't take it into consideration, so over scan support is
built into Android TV (and indeed other versions of Android post 4.2.x). In case you are thinking of using
OpenGL, you also need to address this issue.
Over scan is unlikely to be a problem on true Android TVs, but it could be a
big issue on aftermarket Android TV solutions. Not everybody wants to upgrade their TV every few years, and
a lot of people will get a $50 HDMI dongle with Android TV instead. This is why it is a good idea to includeover
scanconfigurationoptions in your Android TV app.
Improving Android TV User
User experience was always a problem for smart TV platforms. Android TV is
Google TV done right, and it should improve UX, but not out-of-the-box; developers will need to do a lot of
the heavy lifting.
The good news is that TVs don't really require a lot of user input and
engagement; any couch potato will attest to that! TV makers have already spent years polishing their smart
TV interfaces and improving user experience with faster, sleeker UIs and new hardware, such as new
sensor-packed remotes. Things were moving along nicely even without Android TV, but Google's new platform
opens up more opportunities.
I already said I am a bit of a smart TV sceptic, but even I have to admit a
lot of progress was made over the past couple of years. However, Android TV is not just about
improving the way people consume TV content, it's more about changing the way they do it.
If you are the type of user who just likes to watch a lot of sports and
politics in one binge (like my retired and bored dad), UX is an afterthought. The same goes for people like
myself, who keep the TV on in the background, listening to news or music like they might have done with an
ancient valve radio. However, the way many people consume video content has changed drastically over the
past 10 to 15 years, first with digital video recorders, now with streaming. Today's teens are growing up
surrounded by connected devices and they expect even more from a TV than millennials.
The ultimate goal of any smart TV platform, which has proven elusive so far,
is to create a new user experience, combining traditional TV with on-demand video, and other types of
content, as seamlessly as possible. Personally, I don't think anyone has done it right so far. Google could,
but it remains to be seen. A lot will depend on third-party developers. They will have to follow a number of
guidelines to offer good UX on all types of Android TV hardware, from $50 HDMI dongles to high-end $5,000 TV
Since I am not a fan of current smart TV platforms, listing what needs to be
done to create a perfect user experience might be presumptuous, to say the least. Still, UI and UX experts
tend to agree on some points:
- Smart TVs are still just TVs- they are primarily used to
consume video content, not to do a million different things we already do on our mobiles and tablets.
- Input methods must improve - remotes have evolved, but
they are still not good enough for a complex UI. Using smartphones and tablets as alternative input
methods is still considered geeky and needs to be more straightforward.
- Gesture control - it could be implemented in some
situations, but since we are dealing with a passive user experience, it won't change much.
- Multiple users - TVs aren't personal devices in most
households, so forget about logging in, it will just annoy users.
- If it ain't broke, don't fix it - traditional radio and TV
still provide a very enjoyable user experience due to their simplicity and convenience, so there is no
need to reinvent the wheel.
- Keep everything simple - try to keep user interaction to
an absolute minimum, with as few clicks as possible.
- Go for a clean, minimal UI - just because you have a lot
of real estate to play around with, you don't have to use all of it.
Ultimately, Android TV developers can only do so much; it remains for Google
and Android TV partners to create an excellent user experience. Third-party developers will simply build on
it, expand functionality while ensuring a consistent experience across multiple devices. If the underlying
platform suffers from teething problems or inconsistencies, developers must do their magic with their hands
tied behind their backs.