Version 1.0.7 Release Notes

Version 1.0.7 provides Alexa integration, a home screen Watchlist row, search results grid, VAST enhancements, and more. It was released on January 16, 2018. (Version 1.0.6 was an internal release.)

New Features

The following are new features in the 1.0.7 release.

Alexa Integration

Fire App Builder now includes Alexa integration by default. You can use voice commands to control media playback, such as play, pause, stop, rewind, fast-forward, and so on.

If your Fire TV device has a microphone button, you can hold down the microphone button to say the commands. Or if you've linked your Echo or Echo Dot with your Fire TV, you can use the trigger word "Alexa" without pushing your microphone button to initiate the commands. Common commands are as follows:

  • "Alexa, play"
  • "Alexa, resume"
  • "Alexa, pause"
  • "Alexa, rewind 5 minutes"
  • "Alexa, fast forward 5 minutes"
  • "Alexa, fast forward" (default is 10 seconds)
  • "Alexa, rewind" (default is 10 seconds)

For more details, see Try the Alexa Integration.

Add to Watchlist Button and Watchlist Row on App's Home screen

When you view videos, an "Add to Watchlist" button appears on the Content Details screen:

Add to Watchlist button
Add to Watchlist button

Videos that you add to your watchlist appear on the "Watchlist" row on the app's Home screen.

Watchlist row on the Home screen
Watchlist row on the Home screen

(If you don't want the Watchlist functionality, you can remove it.)

Continue Watching Row on App's Home Screen

The "Continue Watching" row on the app's home screen shows content that you were recently watching.

Continue Watching row
Continue Watching row

If content is played for more than 10 seconds, it gets added to this row. To change threshold, limit the number of items shown, or remove the Continue Watching row, see Modify the Continue Watching Row on the App's Home Screen.

Time Remaining Displayed on Image Thumbs

When you return to a video that you haven't finished watching, the time remaining to complete the video appears in the image thumbnail.

Time remaining display in context
Time remaining

Here's the image thumbnail in the context of the Content Details screen:

Time remaining displays at the bottom of image thumbnails on the Content Details screen
Time remaining displays at the bottom of unfinished videos on the Content Details screen

Search Results Organizes Returned Items into Grid

Previously, the search results page showed all results in a single row (which would require horizontal scrolling if you had a lot of results). Now the search results appear in a grid row.

Search
Search. The search results appear as thumbnails below the search bar. Here the word "diving" matches a number of different videos. Note that you can hold down the microphone button and say the words you want to search for. Your speech gets converted into text and populated here.

VAST Ads Enhancements: VMAP tracking, Play/Pause/Click events in ads, and MiniBrowser Support

VAST Ads received several major enhancements in this release:

VAST: Support for VMAP breakstart, breakend, and error tracking events

The VAST Ads component provides support for several new VMAP tracking events:

  • breakstart (when your ad break starts)
  • breakend (when your ad break ends)
  • error (errors that occur during the ad breaks)

(VMAP stands for Video Multiple Ad Playlist and refers to the ability to schedule multiple ads from a single tag.) Fire App Builder's support for these tags allows you to gather better information about the ads you show. For info on how to configure VAST ads, see the VAST Ads Component.

VAST: Play/Pause/Click Events in Ads

During video ads, users can now play, pause, and click events in the VAST ads that play. To enable this interactivity, you simply add some strings to your app's custom.xml file. For details, see the VAST Ads Component (specifically the last step in the section titled Configure Vast Ads.)

VAST: Web Browser Display ("MiniBrowser") for VAST Ads

Fire App Builder now provides a WebView module called MiniBrowser to support user interaction, primarily for ad clicks. When users click links in your VAST ad, the MiniBrowser can open with the target web pages. To enable Vast ads to open in the MiniBrowser, see the Launch Video Clicks in a MiniBrowser.

The MiniBrowser component required a minor update to the License and Terms of Use files. This component is licensed under the Amazon Software License, described in the terms_of_use.html (inside app > assets).

BrightCove Media Player Support

Brightcove media player is now available as an alternative to the default Amazon media player. By default, the Amazon media player (AMZNMediaPlayerComponent) is configured in Fire App Builder. However, if you have a specific need to use the Brightcove media player, you can also choose to use this media player instead. For example, you may want to use BrightCove if you are already familiar with it or use BrightCove’s online video platform (OVP) service. See BrightCove Media Player Component for more details.

Mix Free Content with Login-Required Content

If your content requires login but you want to provide some free content too — free content that doesn't require login — you can do so. For example, suppose you use Adobe Pass to require users to log in to view your app's content. For users without login access, you might want to provide some free content as a teaser to subscribe.

Previously, Fire App Builder didn't allow you to mix both free content with login-required content — everything was either free or behind a login. Now you can mix the two content types. For content you identify as free, users will see the free category on the Home screen where they can view the content without logging in. See Mix Free Content with Login-Required Content for details.

Easier to Switch Between Reflection and Translation

Translation and reflection refer to the processes used to map your media feed's properties to Fire App Builder's content model. Previously, if you wanted to use reflection (rather than the default translation method), you had to use different model names in the mapping logic for your content and category recipes. With the 1.0.7 release, both translation and reflection use the same model names. This makes it consistent and easier to switch between translation and reflection if needed.

The model names now use the m camelCase convention. For example, regardless of the method (translation or reflection), if you were mapping the description element in your media feed to Fire App Builder's description model, you would use description@mDescription. If you were mapping the title element in your media feed to Fire App Builder's title model, you would use title@mTitle. For more details, see the matchList parameter).

If you previously used the translation method in your category recipes or content recipes, you'll need to update the model names in your mapping logic (changing them from description to mDescription and so on). See the matchList Parameter for content recipes and the matchList Parameter for category recipes for more details.

There might be other tags in your mapping logic (for example, for Amazon Extras or live streams) that do not use the m camelCase convention because they are outside of Fire App Builder's content model. See the documentation specific to those features for details.

Documentation Update: Maps

To better guide your journey in customizing, configuring, and building your Fire App Builder app, the documentation now offers various process maps to better guide you from topic to topic through a larger process. You will see these maps at the top of most documentation pages. See Beginning-to-End Process Maps for Building Your App for more details.

Bug Fixes

Updated Package Name in Sample App Manifest

The default package name in the app manifest was updated to remove the string amazon. The default app manifest is now as follows:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.fireappbuilder.android.calypso">

You must change this default package name when you set up your app anyway (see Customize the Fire App Builder Sample Project). If you have amazon in your package name, it creates conflicts with Amazon Catalog. (However, note that you cannot change your package name without severing the connection with your previous app, so if this is an issue, contact Support from within the Developer Portal.)

Removed READ_PHONE_STATE Permission

Previously, the app manifest requested an implicit READ_PHONE_STATE permission. This created issues when submitting Fire App Builder apps into Google Play. This permission was not needed and so was removed.

Users No Longer Prompted for WRITE_EXTERNAL_STORAGE Permission

Previously, when updating your app, the Appstore would prompt users for permission to write to external storage. This issue was fixed with a change to the Fire App Builder manifest.