greg-pughCorona Ambassador Greg Pugh is the founder of GP Animations, producer of the Maddie Bear book series. When he’s not writing and illustrating children’s book apps, he also works as a Flash developer, tutorial writer, and UI designer. Follow him on Twitter at @GPAnimations.


After publishing the paperback and iPad versions of Maddie Bear’s Birthday, I wanted to keep the series going, but I didn’t have any ideas for the next story. So, I took a break from writing and decided to create an endless runner game called Maddie Bear’s Snack Time. It’s a very simple game with one-touch controls that I ported to iOS, Android, Nook, and Kindle Fire very easily. My 21-month-old daughter actually figured out how to navigate through the menu and play it within 2 minutes, so in my book, the game was a success.

When Amazon announced their new Fire TV device, it seemed like a natural transition to port over from Kindle Fire to the Fire TV. I assumed that all I would need to change was the “tap” events into “button” events and send it off to Amazon. The problem was that I didn’t know how the Fire TV’s remote control mapped its button layout. So, I contacted Ed Maurina (www.RoamingGamer.com) since he already knew how to map Ouya controller events to work with the Corona Simulator. After a few trial runs on a friend’s Fire TV, we achieved a solution which would allow me to get Maddie Bear’s Snack Time on the Fire TV.

Prepping for Fire TV

To prepare your app for the Fire TV and Amazon App Store, I suggest you obtain Ed’s Fire TV Library. Using this library, you can convert all of your “touch” and “tap” events to Fire TV remote controller events. Ed’s library is also great because you can use your computer’s keyboard to test the controls in the Corona Simulator. If you have a USB gaming controller that allows you to assign keyboard keys to its buttons, you can even test your app using that.

Since I already had the Kindle Fire and Android versions of my app on the Amazon App Store, I published the Fire TV version using the same Application Name, Version Name, and Package Name. However, I changed the Version Code to 2. This lets Amazon know that it’s the same app but with added support for a new device. This also prevents duplicate apps for different devices appearing on the Amazon App Store, which can confuse customers.

Notes For Publishing to Fire TV

  • The app should be 2GB or less in size. Anything 4GB or higher may not install/run on the Fire TV.
  • The UI should be simple and easy to navigate using the Fire TV remote control with one hand.
  • It can not require the following permissions:

android.permission.SET_WALLPAPER
android.permission.CALL_PRIVILEGED
android.permission.CALL_PHONE
android.permission.MODIFY_PHONE_STATE
android.permission.READ_PHONE_STATE
android.permission.READ_SMS
android.permission.RECEIVE_SMS
android.permission.SEND_SMS
android.permission.WRITE_SMS
android.permission.ACCESS_FINE_LOCATION
android.permission.RECORD_AUDIO
android.permission.CAMERA

  • Include a 512×512 .png icon file with square corners and without transparency.
  • Screenshots need to be .png or .jpeg format in landscape orientation at 1280×720 px (720p), 1920×1080 px (1080p), or 1024×600 px.

Testing the App

Once you have the app published, you can side-load it onto a Fire TV for testing. In my case, this was done by emailing the .apk file to my friend who gave me detailed reports of how the app ran. If you’re happy with its performance, sign into your Amazon Developer account and create a new app profile. Here you’ll upload the .apk, screenshots, icon, write a description, and provide other details just like any other app.

Submission

When I submitted my app, the status went from “Submitted” to “Live” within 24 hours. Either I picked a great time to submit an app or it’s because Amazon really wants to build up their Fire TV app library. Regardless, this could be a great time to get your app in the Fire TV store while the market is unsaturated.

  1. Excellent article! I really appreciate the collaborate effort with Ed.

    Seeing the note about android.permission.ACCESS_FINE_LOCATION is really helpful as many of our apps use this permission for analytics purposes.

    Thanks!

  2. Hi there, thanks for the great article –

    My Fire TV submission was rejected because I do not request and release audio focus at the beginning and end of my app, respectively. Did you have this problem? Does anyone know how to get around this?

  3. I’m really surprised no one else has experienced rejection by Amazon as I was for not properly requesting control of Audio (in case that the user is playing background audio already). Seems like it could be a real showstopper for developing for Fire TV with Corona. Are the reviewers just being cruel to me? :)

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>