Building TV Apps !!

If building mobile apps interests you alot, then building applications for Android TV or Firestick will surely drive you crazy. I personally chose this field of development as I wanted to explore new dimension of tech in building apps.

Today we will be talking about what are the major challenges you will face when we develop Android TV applications.

Let’s take a look at the differences you may face when developing Android TV applications compared to Android mobile world. Even though both development ‘playing fields’ are based on the same core technology, the essence of the game, and the rules, are quite distinct.

Android TV or Firestick is obviously a smart device. There are several fundamental differences between developing for remotely controlled devices (we can’t really just call them “TV sets”) compared to developing for mobile devices, and you will soon become aware of them. But here’s the heads-up 👍

  • User interaction in the ‘TV’ environment is achieved by handling Remote Control key-initiated events, as opposed to handling simple touches, clicks or swipes made on the device in the mobile world. This introduces extra complexity and an extra ‘risk’ step as regards integration and device reaction time (Key DPAD_UP, Key DPAD_DOWN, Key DPAD_LEFT, Key DPAD_RIGHT, Key DPAD_OK and obviously back key).

This is a completely unique concept when developing remote-controlled apps compared to how mobile apps are used. The entire process of handling focus of the UI elements can be a challenge in itself, and is quite a ‘culture change’ from mobile. You need to develop the underlying logic of how to highlight focus elements and also to devise and develop for the logic of how the user moves between elements and blocks of elements with the 5-key RCU.

In your activities, you need to override this method , if you have to develop some custom user navigation journey.

  • Framework shift: Android TV provides the “Leanback Framework” for developing applications that are meant to run on remote-controlled devices. The physical and mental/intellectual differences in the user experience of using a mobile compared to watching the living room TV must not be underestimated.

Now let’s talk about the cool stuff, that comes when developing to tv 😎

  • Simplified design. Given the fact that your apps are going to be remote-controlled in the TV context, the user interaction is much simpler. Hence the design is simplified, and easier to use for a wide variety of people. This relates to how the UI shall look and feel, performance benchmarking etc.

Challenge zone : It’s where it gets ugly, messy , tricky or something that can drive you nuts.

  • The TV environment comes with some serious limitations. Some TV devices will run AOSP which means no proprietary drivers and a lot of things have to be implemented “from scratch”.

But beyond these challenges, there lies the horizon of unlimited reachability , engagement and seamless user experience. So, if you are ready to take it all in your stride, and adapt with expertise in Android (Kotlin, Java, Rx, Android Architecture Components) you can jump on to this roller coaster ride to the new era in TV in viewers’ living rooms as well as on-the-go.

Well let’s not be afraid. Let’s do it together. In my coming blog series we will build a simple easy to start app for TV. Be prepared with some theory to go on such as :

Stay Tuned, for upcoming blog series on TV app development !!



@GoogleDevExpert Firebase, WTM Ambassador,

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store