It probably comes as no surprise that one of the most common use cases for a device like Fire TV is to stream media content. You may even ask what other possible use case there could be. In fact, even though streaming movies, TV series, and video sharing sites are among the most popular content available on Fire TV, the device itself is actually capable of much more.
Fire TV is flexible and provides high performance across a wide range of applications. It has a powerful quad-core CPU and a dedicated GPU. The hardware on the latest Amazon Fire TV offers 2GB RAM, 8GB internal storage, support for 4K video output, support for HDR, and Dolby Atmos audio. These features mean that Fire TV has the muscle to run all sorts of apps and games—streaming media is just one more thing it handles well.
Choosing a framework
Since Fire TV runs on Fire OS, Amazon’s Android-based operating system, programming it is very similar to programming any other Android device. It’s up to you to select the Android tools and workflow best suited to your development style and experience.
You are free to create your app or game in Java (using the standard Android SDK), or use the Android NDK instead (if you prefer to program in C/C++). There are also many third-party development frameworks that work with Android, so you have lots of alternatives to choose from. If you are proficient using Unity, Cocos2d-x, GameMaker, or one of the many other systems popular among mobile app developers, you will find it straightforward to package your game for Fire TV. If you can produce an .APK file, you can probably install it on Fire TV.
Amazon has also created dedicated tools and templates of its own to simplify the creation of apps specifically designed to deliver streaming media. As you prepare to create your first streaming media app for Fire TV, you must decide whether you will code it from scratch, build on top of a third-party development framework, or use the purpose-built tools provided by Amazon.
Amazon Creator
Amazon Creator is a tool that helps you, as a content creator or owner, package existing media in your YouTube channel or media RSS into a customized web app. It produces a stand-alone application that you can style and then publish directly to Amazon Appstore.
As of this writing, Amazon Creator is available in preview mode as we get it ready for broader distribution. The preview version is fully functional, however, and media apps that you publish using Amazon Creator will be real, live apps available to everyone. We are especially interested in hearing about your development experience during this period, in order to help us improve the Amazon Creator service.
Click here for more information on Amazon Creator.
Web App Starter Kit (WASK)
Web App Starter Kit (WASK) is a framework created by Amazon specifically for web developers building apps with HTML5, CSS3, and JavaScript. It includes a full-featured, customizable HTML5 web app template to jumpstart your dynamic media app development. Baked in is the code needed to build the big screen experience consumers expect, including a selectable list of categories and rotating carousel of media content.
Starting with the base app template, which contains the specific media functionality you wish to support—for example, media RSS, JSON feeds, or support for online video providers such as YouTube or Brightcove—you can customize the experience through settings files or by coding extended features directly in the template source files.
Click here for more information on WASK.
Fire App Builder
Fire App Builder is another development framework alternative created by Amazon specifically for producing Fire TV media apps. It is based on Java and depends on Android Studio, Gradle, and other tools common to Android development.
When you create an app with Fire App Builder, you configure the settings for your data feed, screen layouts, and functionality through a series of JSON files. Similarly, simple config file changes allow you to customize the look and feel of your app with no Java coding.
Fire App Builder is designed to help you create high-quality media apps without advanced Java programming, but it is also extensible. If you are comfortable coding in Java, you are free to build on top of Fire App Builder to add more advanced features.
Click here for more information on Fire App Builder.
Other options
These are just a few of the tools and frameworks available to you as a Fire TV (and Android) developer. They have been created specifically with Fire TV in mind, and in particular, with the express goal of helping you to develop streaming media apps on Fire TV.
As mentioned above, though, almost any valid .APK file can be made to work on Fire TV (perhaps with some API substitutions, as necessary), regardless of the toolchain you choose to produce it. This includes frameworks such as Unity, Adobe AIR, GameMaker, Cocos2d-x, Corona, Xamarin, Construct, and many others.
The Android Leanback Support Library, created by Google to facilitate creation of Android TV apps, is another alternative. It contains components and widgets to build an efficient, good-looking media streaming Android TV app from scratch—and includes a sample project that works on Fire TV out of the box (note that Leanback is not directly supported by Amazon).
Learn more about developing for Amazon Fire TV
To learn more, download our free eBook titled, "How to Develop Media Streaming Apps for Amazon Fire TV." You'll learn best practices for designing for a 10-foot UI, how to use Amazon's dedicated tools and templates, how to publish to the Amazon Appstore, and more.