Flutter on Your TVs

Smart TVs owe their intelligence to the operating systems running on them and, of course, the applications that function on these systems. Many of us now use televisions not for receiving TV signals, but primarily for their ability to display content provided by apps like Netflix (Prime, Disney …etc.).

Even a really „dumb“ TV can become smart thanks to Google Chromecast (or another stick). Very few households lack a television, and buying one without „smart“ capabilities today makes little sense. So, what options do we, as Flutter app developers, have?

Quite a lot.

Although no TV operating system is officially supported by Flutter, its cross-platform nature offers us significant possibilities, especially in the environments of Android TV, Apple TV (tvOS), and web applications (HTML5).

Let’s take a closer look at the main players in the market where Flutter applications can succeed.

It doesn’t look bad at all.

How about performance?

Flutter compiles applications to the target platform. There are plenty of resources on the internet about performance on iOS and Android, so let’s simply state that performance is not an issue for these platforms.

The remaining discussion is about performance on the web (HTML5). Here, Flutter has seen tremendous development in recent versions and combined with WebAssembly (WASM) it seems that performance on the web is also no longer an issue. With the latest Flutter updates, even large companies are daring to use Flutter for the web (see: https://medium.com/flutter/io24-5e211f708a37).

An interesting contribution to this discussion is the proof-of-concept experiment conducted by LG, where they wrote one of their applications in Flutter and ran it on their TVs, i.e., on WebOS as a web application. The results are very good compared to the original React applications:

  • „launched twice as fast“
  • „consumed less runtime memory“
  • „the best benchmarks that app had ever seen“
  • „increased developer productivity“
  • „better runtime app performance“
  • „a smoother experience finding and hiring talented developers“

Personally, I would take the results with a grain of salt, but the positive outcome is undeniable. Let’s not spoil it by questioning the quality of the original react application. I take from it that what LG believes in is good for me too 🙂 (and kudos to the Indian team for the great result). However, it’s worth noting that the last point doesn’t apply to the Czech (or European) market.

Sources:

Remote control

TVs are controlled differently than phone applications. Building for TV platforms requires a significant rethink in terms of control logic. TV predominantly relies on remote control input, whereas Flutter is tailored for touchscreens and mouse movements. This gap translates to additional development time and potential inconsistencies in user experience. But it is solvable and nothing that will stop enthusiastic developers.

Sources:

Video playback – stream

Video playback is one of the most common tasks for applications running on the TV (from logical reasons). Video players may behave differently on different platforms, but Flutter is not lagging behind and there are SDKs for all platforms, such as Video_player (Chewie) or Better Player, and probably the best solution media_kit (especially if you don’t have the backend side, meaning the stream format, under control).

Future

A common question I get is whether Flutter has a future. Google is known for killing projects (Google Graveyard projects), even those that work and prosper. The more major players start using and betting on Flutter, the more secure its future will be. I recommend the showcase section on the Flutter website, e.g., BMW. In the TV space, let’s hope for the expansion of Android/Apple TV and the first signs from Samsung (Tizen) and LG (WebOS).

Conclusion

So, Flutter is something that can significantly impact the development of TV applications. It significantly benefits over other (native and cross-platform solutions) due to its nature, offering excellent developer experience (it’s enjoyable to code in), being well-polished and functional (four years of extremely fast iterations), delivering excellent performance (especially with recent versions), and allowing applications to look the same across all platforms (if desired, thanks to its custom rendering engine).


More about Flutter

  • Flutter on Your TVs
    Smart TVs owe their intelligence to the operating systems running on them and, of course, the applications that function on these systems. Many of us now use televisions not for receiving TV signals, but primarily for their ability to display content provided by apps like Netflix (Prime, Disney …etc.). EvenContinue Reading
  • Flutter bootcamp aka Školka is starting
    Today we have closed the selection of candidates for our three-month EmbedIT Flutter Bootcamp (which is a really cool program, by the way). We’re starting next week, I’m looking forward to it. Committing to change is always a matter of some personal bravery. Most of the people who join us have toContinue Reading

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *