I'll be talking about things to keep in mind when deciding whether or not to make your app available to Google TV and if you decide to do so what factors are important in the process.
For the technical side of things I recommend checking out Mark Allison's posts on his Styling Android blog. At the time of writing this he has already published two parts of his Google TV series and more is to follow:
Styling Android - Google TV - Part 1
Styling Android - Google TV - Part 2
There's also Google TV team provided handy documentation about implementing and designing apps for the Google TV. It is good read and worth checking out: https://developers.google.com/tv/android/docs/gtv_android_patterns
- The 10ft Environment
- TV Displays
- Sound and the UI
- Navigation Design
- User Interface Design
- UI Zones and Patterns
- UI Performance
- Additional Tips
Another good Google provided read is the recently added Designing for TV training on the Android developer site.
But let's dive in to the domain of connected TV and factors that affect app design.
TV is sharedTVs are used by the whole family. If your app requires users to login it will probably be difficult to users. Whose account should be used? If the app has accounts make sure that your app supports multiple accounts and easy switching between them.
TV is for entertainmentPeople use TVs to relax and to be entertained. We need to keep this in mind when we build apps for TV. Google TV is not a living room PC. It is not a good device for surfing the web and reading emails. People have better devices for those tasks.
For entertainment a large display is great. Naturally, watching video is a perfect fit to a Google TV but also other visual content and games can greatly benefit from the large screen experience.
Do people want to interact with the TV?Hands off approach to entertainment works better than hands on. Showing users something they can skip / change easily by default makes a lot of sense. Avoid screens that don't have any content. If it is possible to start your app directly playing a video, displaying a photo etc. it can make the app feel more at home on a TV.
TV remotes are difficult to useTV remotes are very different in nature than any other controllers we are using to control computers, tablets or smartphones. A complex remote defeats the purpose of the TV. For me and probably many of you a keyboard is an acceptable form of TV remote but for large masses it is not. A computer keyboard is not a remote control for an entertainment device. I wrote about TV remotes some time ago.
Once the device manufacturers get the remote controller right (the latest generation Vizio and Sony is already looking much better) it is going to put more limitations to the apps we build. Pointer navigation is going to remain awkward and people don't want to do it. What this means is that we should design our apps for the D-pad.
Any UI component should be accessible from any other focused UI component by navigating with D-pad either directly or with minimum steps. This means that the app structure and component positioning must be designed much more carefully than on touch screens
Simple, direct access, one-click-experienceLet me introduce you to the optimal TV user interface:
That is full screen media player. Media in this case can be a video, picture or a game. If your app starts from this screen your app is getting your user directly where they want to be.
This is, of course, not always possible but it is a good goal to keep in mind when thinking about Google TV app design. Your users want to use the big screen they have to see content that utilises the big screen optimally.
One app?Andy Rubin's famous view of Android app ecosystem has been one app running everywhere. Users should not have to look for a tab specific app but instead just install the same app they have on their phones to their tabs and the app need to know how to utilise the larger screen size. His point of view also extends to TVs. While I fully agree with him about tabs and phones I'm not convinced the same app needs to extend to Google TV.
An app can adapt from a phone display to a tab display using the awesome tools provided by the SDK because the user goals and app's main function in basically unchanged between these two device categories. The same does not apply to TVs. Users have very different goals on TV and on portable device. Simply tweaking the app UI to utilise TV screen space and making controls work is not enough.
I'm in the opinion that most apps do not need to be on TV. Many apps could work together with TV though.
Second screenSecond screen apps is a very interesting concept. I personally believe that this is the area where most innovation can be done. The way TV apps work together with tablets and phones is going to be interesting. This is going to be one of the great strong points of Google TV as a platform. Getting Android apps to talk with each other is easy.
We already have few second screen apps. They are fairly primitive but are already showing the potential that is there. The most obvious one is of course a remote control app. Able remote control app already does many great things.
Can't wait to see what kind of second screen apps people come up with! Let's think beyond remote controls.