Today, Amazon announced Amazon Fire TV, a new device that makes it easy for users to stream movies, TV shows, and music as well as download apps and play games right on the HDTVs they already own. For developers, Fire TV can help you increase your customer base by putting your app in the living room, in front of people who enjoy entertainment and may not have seen your apps before. To promote rich user experiences, Fire TV enables full-featured game controllers, Dolby Digital Plus Certified surround sound and more. Android developers will find that developing for Fire TV is familiar, and optimizing their apps for the new controllers and TV display will not require learning a new language or new frameworks. Click here to learn more about how to setup your Fire TV developer environment.
Built with High Performance Gaming in Mind
A room with a large screen TV and surround sound audio is a great environment for gaming, and Fire TV has the performance to deliver a great gaming experience. From its inception, Fire TV has been designed around optimizing HDTV displays and powering demanding applications. It uses a Qualcomm Quad Core Snapdragon Krait 300 processor with Adreno 320 GPU and 2GB of RAM to support high performance game experiences. (See all the tech specs here).
Fire TV also supports a variety of controllers to let you design the best experience for your users. Fire TV supports a d-pad remote control, along with multi-function game controllers. Multi-function game controllers enable much more engaging gameplay for the TV than a typical d-pad remote can.
Second Screen via DIAL
Second Screen is a technology that allows your Amazon Fire TV app to interact with other mobile devices using DIAL, an open standard that enables customers to discover and open apps on their television right from their tablet or phone. For example, a user can sit on their couch and use their Kindle Fire HDX to control an app running on their TV screen.
It’s Time to Start Thinking About the 10-foot Experience
Running apps on a television opens up unique experiences for customers. Users are (on average) 10 feet away from the screen with different viewing habits and expectations. For example, users don’t need to stop what they are doing to view your app. Users can see the TV screen while they are making breakfast, unlike when they’re on phones or tablets. It is also easy for multiple people to have a good view of the TV at the same time, something which can be hard on PCs or mobile devices. There are several ways to use these large-screen characteristics to your advantage. One idea is to use the TV display productively during times it would otherwise be turned off. For example, you could display traffic and weather information on the TV or even show a family calendar or bulletin board app on the TV. Another idea is to use the screen size to support multi-player games in which the users can play concurrently, each able to see the screen without difficulty, each with their own game controller.
There are two kinds of controllers available for the Amazon Fire TV. They are:
Amazon Fire TV Remote- Included with your Fire TV and supports a variety of apps and games.
Game Controllers- Bluetooth wireless game controllers, like the Amazon Fire game controller, provide all the controls you need for a richer gaming experience. (Learn more about the Amazon Fire game controller).
The Fire TV remote and game controllers trigger logical default events, so the game controller will work predictably in standard Android UI widgets. For example, the Menu button on the controller will pass through to Android and invoke the Android context menu (OptionsMenu), and the Back button on the controller will be ingested like the back button in the Android UI. Events for the remote and game controller can be customized, and trigger special events you can detect.
Fire TV remote (shown below) comes with Amazon Fire TV. The remote supports the remote input events shown here. The D-pad on the remote fires keycode events (like KEYCODE_DPAD_UP) and navigates through standard Android controls, moving UI focus up, down, left and right. In many cases, navigation around your UI will work right out of the box and won’t require any special event handling. Since the remote is the default controller that ships with Amazon Fire TV, you should test to see that your app is functional with Amazon Fire TV remote, even if you have optimized for a game controller.
The Game Controller - Multiplayer support comes to your TV
The Amazon Fire game controller offers the same level of default support for standard Android navigation controls as the remote does, but optimizing your game for the game controller offers a lot of additional options; just take a look at the game controller controls in the picture below. Up to 7 game controllers can connect via Bluetooth to an Amazon Fire TV at any one time and each controller can be associated with a player ID, so multi-player support is a real option for you.
Integrated with Amazon Payment Services
When a customer buys a Fire TV and registers with their Amazon Account, they are already set up with their verified Amazon Payment profile. Your user is ready to purchase apps or in-app items with no further effort. Amazon Fire TV supports the Amazon In-App-Purchasing API so you can offer consumable items, permanently entitled items, and even subscriptions for sale in your app.
To help you tune your gameplay and monetization implementation, Amazon offers A|B Testing and Analytics tools that can help you hone your app for maximum user retention and optimized monetization. And all of these tools work on Fire OS devices and Android devices, and most will work on iOS devices as well.
Optimizing Your App for a TV Screen
To make your app look sharp on a TV, you’ll want to make sure you have a layout for tvdpi and xhdpi to support the resolution on living room TV screens. Unlike most Android devices, Amazon Fire TV will render your app on 720p or 1080p screens of any size, so you should plan for a range of screen sizes. It is also important to remember that your user will typically be 10 feet away from the screen, and may appreciate larger controls and dialog boxes. Common tweaks to make apps look better on TV include:
Increasing the sizes of fonts and buttons
More clearly identifying the “selected” item
Adding additional padding between all elements on the page
Consider using more muted colors. Bright colors tend to over-saturate on TV screens and may appear to bleed into adjacent pixels
Keep away from the edges as some TV’s may clip the edge of the screen
Three Steps to Get Your Android App on Amazon Fire TV
Because you can use the Android code you’ve already written, getting started is easy.
Here are three steps you take to make your game or app available on Fire TV:
Make sure your app looks good on an HDTV and is optimized for the living room setting, where the user is typically 10 feet away from the screen
Check to see if the Amazon controller defaults work with you app, or add some code so that it does work with the Amazon Fire TV remote and game controllers
Submit (or re-submit) your app in the Developer Portal
Once submitted and approved, depending on your app’s compatibility, a user may be able to purchase your app on Amazon Fire TV, Kindle Fire, the Amazon Appstore website, or on the Amazon Appstore of other compatible devices. This means that if your app is available for Kindle Fire devices, Android phones, and Amazon Fire TV, your user will be able to purchase your app once on any of those devices and use it across any of the other compatible devices. Not only does this expose your app to new users, it also makes your app available on more screens so it can be in front of your existing customers more often.
Get 500,000 Amazon Coins through Appstore Developer Select
When you launch your app on Fire TV, you will be considered for the Appstore Developer Select program. As part of the Appstore Developer Select program, developers who support Fire TV can receive 500,000 Amazon Coins and create campaigns where customers earn those Coins when they purchase apps and games. This is in addition to the regular program benefits that include 500,000 mobile ad impressions, enhanced merchandising, AWS credits, and additional Amazon Coins incentives. See this blog post for more details on Appstore Developer Select.
While you can develop Android apps for Amazon Fire TV without an SDK, Amazon does provide an SDK you can download that includes sample code, Javadocs, two .jar files for controller support and messaging, and guidelines for fine-tuning formatting for HDTVs.