Designing Multiplatform Smart TV Applications

Tommi Järvinen

Big screen and Smart TVs in particular are rapidly becoming more and more important platforms for video services, overtaking PCs and mobile devices as the main device for consuming video content services. The reasons for this are obvious, of course: people are watching majority of their daily dose of video content at home where they have bigger and bigger screens available and arguably watching the high-end 4K resolution video with latest HDR colors and surround sound is not much of an experience from a 6-inch screen of a mobile phone.

As the usage of Smart TVs grows and more and more users want to watch videos from the big screen, it is becoming essential for video service providers to have their services available for Smart TVs to reach the customers. “Content is king”, wrote Bill Gates in his essay 1996 and that argument still holds firm when talking about video services today but the importance of having your service available on the most popular platforms is not far behind. No video service provider willing to compete with major global players on the market can ignore Smart TVs as a platform.

So, you do want to have your service running on Smart TVs but in which Smart TV platforms, brands, models? If you are new on the market you will quickly notice that there are several different platforms like Samsung’s Tizen, LG’s WebOS, a more generic platform of HbbTV supported by several brands and then you of course have Google’s AndroidTV / GoogleTV and Apple’s tvOS for AppleTV that are originating from their respective mobile platforms. And there are others: Panasonic, Philips, Vestel, HiSense and many others also have their own Smart TV stores and platforms for the applications.

All this sounds awfully complex, doesn’t it? In the mobile world, you have the Apple ecosystem and the Android one. For the latter, there is of course a wide range of devices, brands, screen sizes and OS versions to support but the common ecosystem with Play Store still basically means you have one iOS version and one Android version of your service.

Does this diversity of platforms on Smart TVs mean we need a dozen different applications to support the wide range of TVs the users might have at their homes, then? Well, fortunately it doesn’t. Most Smart TV platforms have a great deal in common in terms of implementing applications and basic web development technologies like HTML5, CSS and Javascript form the foundation for most of the popular platforms. By just spending a little bit of time in planning your application structure and code and paying attention to a couple of known limitations of TV platforms, you should be able to have about 90-95% of your common application code running on those HTML5-based TV platforms quite easily.

Now, if that’s true (and trust me, it is), writing and supporting multiplatform apps for Smart TVs today almost sounds like a walk in the park, doesn’t it? Unfortunately, as certain as I am that you can write a vast majority of your app code with relative ease and have it running on multiple of platforms, I am equally sure that the remaining 5-10% will cause you more headache on a single TV platform than the rest of the application code will do for all of the platforms combined. However, preparing yourself for issues in certain areas and knowing and understanding the differences between platforms is vital for overcoming the obstacles and savies you a lot of time in testing and debugging your app.

To help you in designing and implementing your app for multiple Smart TV platforms, or just understanding the mechanics of Smart TV app development in general, we at Sofia Digital are writing a series of blog posts talking about different aspects of the Smart TV app development. We hope these articles will give you some insight on the development work in general and help you to understand those small but significant differences between platforms: How to deal with them and especially how to prepare for them in advance and take them into consideration when planning the app. We are also looking at some of the things that can help you in creating more common application code, reducing the need of platform-specific parts. Finally, we will talk about testing apps and how that is an essential part of development and maintenance of the apps on Smart TV platforms.

In the next blog post, Scrum master Janne Lahtela shows how to build your first Smart TV application. Our Director of Service Design Janne Riihimäki shall be writing about the UX design aspects for Smart TV and I will add another couple of posts talking about specifics of different platforms, planning the apps to be used on wide range of platforms and importance of testing in enabling the successful multiplatform projects.

About author

Tommi JärvinenMy name is Tommi Järvinen and I’m currently working at Sofia Digital as a team lead for Smart TV development teams implementing video-on-demand applications for variety of platforms for our customers. I have over 20 years of experience in TV application development in different roles and I have been involved in Smart TV application development from the early days of Smart TV apps.

Join us

Are you interested to become a Smart –TV -developer? We are currently looking for experienced developers to work on new projects, develop our products, participate in platform development and architecture design. JOIN US!