Scale Up Your Apps and Games: Building New Experiences on Amazon Fire TV
In this session, we cover what's needed to bring your Android-based Apps and Games to the fastest-selling streaming media player in US, UK and Germany: Amazon Fire TV. We will deep dive into developer tools for both apps and games developers, understand the peculiarities of developing for the big screen and how to foster the best of Amazon APIs and monetization opportunities.
We will deep dive into:
• What are the most effective monetization models and strategies on TV for apps and games
• How to leverage features that are unique to Amazon, like buy with Amazon 1-Click settings and Amazon Subscription APIs
• How to leverage the new features of the Fire TV user interface and the new Cinematic UI
• Deep dive into the TV-first development frameworks for Android, Web and Game Development
Automating Google Workspace (GWS) & more with Apps Script
Scale up your apps and games building new experiences on amazon fire tv
1. MARIO VIVIANI
T E C H N O L O G Y E V A N G E L I S T, A M A Z O N A P P S T O R E E U
@mariuxtheone linkedin.com/in/marioviviani
S C A L E U P Y O U R A P P S A N D G A M E S
B U I L D I N G N E W E X P E R I E N C E S O N
A M A Z O N F I R E T V
2. I T ’ S A - M E !
Ma r io V ivia n i
Technology Evangelist, Amazon Appstore EU
@mariuxtheone
Android Developer since 2010
95+ apps published
12,000,000+ downloads
Google Developer Expert 2013-15
Startup Founder, Co-Worker
Speaker at: Droidcon,
Casual Connect, Big Android BBQ,
Google I/O
8. bit.ly/firetvspecs
TV TV Stick
4K compatible
Quad-core CPU
2 GB RAM
(2160p)
WiFi – Bluetooth 4.1
8 GB Internal Storage
(actual formatted capacity will be less)
USB-A and MicroSD slot
FullHD
Quad-core CPU
1 GB RAM
(1080p)
WiFi – Bluetooth 4.1
8 GB Internal Storage
(actual formatted capacity will be less)
MicroUSB (power only)
9. A M A Z O N F I R E T V FA C T S
Amazon Fire TV is
#1 BEST SELLING
Streaming Media Player
In US, UK and Germany
MANY MILLIONS
OF MINUTES
CONSUMED EVERY DAY
on Media Streaming Apps
on Fire TV in UK (2017)
13. A P P M O N E T I S AT I O N M O D E L S
Paid
Apps
In-App
Purchase
Subscriptions
AD
Advertisement
14. MAKING MONEY IS ART
AND WORKING IS ART
AND GOOD BUSINESS
IS THE BEST ART.
A n d y Wa r h o l
A r t i s t
15. A M A Z O N S U B S C R I P T I O N S O N F I R E T V
+150% YoY
Amazon Fire TV
Subscription
Revenue
Amazon Appstore UK Data: Jan – May 2017
16. A M A Z O N S U B S C R I P T I O N S O N F I R E T V
+1400% YoY
Fire TV
On-Demand
Movie Streaming
Category Revenue
Amazon Appstore UK Data: Jan – May 2017
+125% YoY
Fire TV
Sports
Category Revenue
17. T O P 1 0 G R O S S I N G A P P C A T E G O R I E S U S I N G S U B S C R I P T I O N S O N F I R E T V
Amazon Appstore UK Data: Jan – May 2017
1. On-Demand Movie Streaming
2. Sports
3. Novelty
4. Newspapers
5. Magazines
6. Workout Guides
7. Concert Finders
8. News
9. Outdoors & Nature
10.News, Politics and Opinion
18. W H Y A M A Z O N I A P & S U B S C R I P T I O N A P I ?
A D VA N TA G E S
Provide IAP Items,
Entitlements & Subscriptions
Handles purchase flow, payment
processing, receipts, and rights
management.
Amazon 1-Click Settings
27. Available: On Github
Feeds: JSON and MRSS
Player: ExoPlayer, Custom
UX/UI: Optimised for big screen
Theme/Branding: Customisable
IAP: Available
Closed captioning: Available
Ads: Yes - FreeWheel, VAST
Analytics: Yes - Flurry, Omniture, Crashlytics, 3P
Login: Yes - Amazon, Adobe, Facebook, 3P
Available: On Github
Feeds: JSON, YouTube and MRSS
Player: VisualOn, OVP
UX/UI: Optimised for big screen
Theme/Branding: Customisable
IAP: Available
Closed captioning: Available
Ads: OVP
Analytics: Yes
Social Login: No
Web App Starter Kit
28.
29. F I R E A P P B U I L D E R
STREAMING MEDIA PLAYERS
Plug and Play template for audio and video
apps. Create an app in less than 1 hour.
E A S Y, FA S T A N D
B E A U T I F U L
Contains modules (plugins) to enable advanced
functionality
Handles JSON feeds, branding and
customisation
Can be extended with your own code
Supports Amazon Fire TV family
30.
31. M O D U L E S
Social loginsIn-App Purchasing
Ads
Analytics
Media Player AD
32. F I R E A P P B U I L D E R W O R K F L O W
CONFIGURE YOUR
FEED LAUNCH THE APP!
CUSTOMIZE UI &
MODULAR COMPONENTS
SETUP RECIPE FOR
CATEGORIES AND CONTENTS
JSON
33. 1 . C R E AT E Y O U R C O N T E N T F E E D
JSON
MRSS
[
{"id":"123456",
"title":“My Awesome Video",
“description":“This is my awesome video",
"duration":"538",
"thumbURL":"http://myservice.com/thumbnail1.jpg",
"imgURL":"http://myservice.com/bigImage.jpg"",
"videoURL":"http://myservice.com/video.mp4"",
"categories":[“My Funny Videos”,
“Random Stuff”]}
...
]
SUPPORT FOR BOTH
TOKEN AND NON-TOKEN
BASED FEEDS
34. "cooker": "DynamicParser",
"format": "json",
"model": "com.amazon.android.model.content.Content",
"modelType": "array",
"query": "$[?(@.categories[0] in [$$par0$$])]",
"matchList": [
"title@title",
"id@id",
"description@description",
"videoURL@url",
"imgURL@cardImageUrl",
"imgURL@backgroundImageUrl"
]
2 . C R E AT E A R E C I P E TO M A P Y O U R C O N T E N T
R e c i p e . j s o n :
35. "cooker": "DynamicParser",
"format": "json",
"model": "com.amazon.android.model.content.Content",
"modelType": "array",
"query": "$[?(@.categories[0] in [$$par0$$])]",
"matchList": [
"title@title",
"id@id",
"description@description",
"videoURL@url",
"imgURL@cardImageUrl",
"imgURL@backgroundImageUrl"
]
2 . C R E AT E A R E C I P E TO M A P Y O U R C O N T E N T
Y O U R F E E D TA G S
F I R E A P P B U I L D E R TA G S
R e c i p e . j s o n :
36. 3 . S WA P C O M P O N E N T S
s e t t i n g s . g ra d l e
/* Implementations */
':PassThroughAdsComponent',
':AMZNMediaPlayerComponent',
':FlurryAnalyticsComponent',
':FacebookAuthComponent',
':AmazonInAppPurchaseComponent'
37. 3 . S WA P C O M P O N E N T S
s e t t i n g s . g ra d l e
/* Implementations */
':PassThroughAdsComponent',
':AMZNMediaPlayerComponent',
':FlurryAnalyticsComponent',
':LoginWithAmazonComponent',
':AmazonInAppPurchaseComponent'
38. 3 . U P D AT E D E P E N D E N C I E S
b u i l d . g ra d l e
compile project(':TVUIComponent')
compile project(':UAMP')
compile project(':AMZNMediaPlayerComponent')
compile project(':PassThroughAdsComponent')
compile project(':FacebookAuthComponent')
compile project(':AmazonInAppPurchaseComponent')
39. 3 . U P D AT E D E P E N D E N C I E S
b u i l d . g ra d l e
compile project(':TVUIComponent')
compile project(':UAMP')
compile project(':AMZNMediaPlayerComponent')
compile project(':PassThroughAdsComponent')
compile project(':LoginWithAmazonComponent')
compile project(':AmazonInAppPurchaseComponent')
40. 3 . A C T I VAT E C O M P O N E N T I N A C T I V I T Y
N a v i g a t o r. j s o n
"com.amazon.android.uamp.ui.PlaybackActivity": {
"verifyScreenAccess": true,
"verifyNetworkConnection": true,
"onAction": "CONTENT_RENDERER_SCREEN"
}
41.
42.
43. 4 . C U S TO M I Z E T H E L O O K & F E E L
N a v i g a t o r. j s o n
C H A N G E T H E F O N T
4 0 + E M B E D D E D F O N T S + C U S TO M
"branding": {
"globalTheme": "AppTheme",
"lightFont" : "Roboto Light",
"boldFont" : "Roboto Bold",
"regularFont": "Roboto Regular"
}
44. 4 . C U S TO M I Z E T H E L O O K & F E E L
ContentBrowseActivity
45. 4 . C U S TO M I Z E T H E L O O K & F E E L
FullContentBrowseActivity
46. S TA RT TO D AY !
D O W N L O A D
github.com/amzn/fire-app-builder
D O C U M E N TAT I O N
bit.ly/FireAppBuilderDoc
48. W E B A P P S TA RT E R K I T
STREAMING MEDIA PLAYERS
Web-Based Template for easily create
Media Streaming Apps
W E B - A P P S F O R T V
T H E E A S I E S T WAY
Optimised for the big screen
Handles JSON, MRSS and YouTube
Easily editable through CSS
Test directly on Fire TV through Web App Tester
49. var settings = {
Model: YouTubeAPIModel,
PlayerView: YouTubePlayerView,
PlaylistView: PlaylistPlayerView,
showSearch: true,
skipLength: 30,
controlsHideTime: 3000,
user: “MyUserNameOnYouTube",
devKey: “MyKey_YUIYDSUIHJAhsdud9as8aAPAUIAO",
showLatestChannel: true,
displayButtons: false
};
C R E AT E A WA S K A P P F R O M Y O U T U B E
i n i t . j s :
50.
51.
52.
53.
54. S TA RT TO D AY !
DOWNLOAD
D O C U M E N TAT I O N
bit.ly/WASKdoc
bit.ly/WASKgithub
61. T H E 1 0 ’ E X P E R I E N C E
D E S I G N I N G
F O R T V I S
D I F F E R E N T
Yo u w i l l h av e t o
d e s i g n y o u r
i n t e r fa c e d i f fe r e n t l y
fo r p e o p l e s i tt i n g
1 0 fe e t a w ay f ro m
t h e d i s p l ay.
62. N AV I G AT I O N
B E R E M O T E - F R I E N D LY
• Focus on the core
navigation buttons
• Standard Android
navigation for Menu, Home,
and Back buttons
• Reserve media buttons for
playback only
63. Button Unity Input Manager Value Unity KeyCode Value
Home one (system event) none (system event)
Back none (not supported) KeyCode.Escape
Menu none (not supported) KeyCode.Menu
Microphone (Search) none (system event) none (system event)
Select (D-Pad Center) joystick button 0 KeyCode.JoystickButton0
Left (D-Pad) 5th Axis KeyCode.LeftArrow
Right (D-Pad) 5th Axis KeyCode.RightArrow
Up (D-Pad) 6th Axis KeyCode.UpArrow
Down (D-Pad) 6th Axis KeyCode.DownArrow
N AV I G AT I O N - U N I T Y
amzn.to/2xmrd8i
65. A N T I C I P A T E U S E R
N A V I G A T I O N F L O W
N e v e r l e t t h e p l a y e r g e t
s t u c k o r f o r c e t h e m t o
b a c k t r a c k t h r o u g h
n a v i g a t i o n g r o u p s .
66. M O V I N G F R O M M O B I L E
W H E N Y O U R U I J U S T W O R K S
Chances are that
your existing
LANDSCAPE design
will work perfectly
as-is, provided it
supports a few basic
features
Button states for selected, disabled,
etc.
Easy navigation via the Amazon Fire
TV Remote
Clearly indicates how to move from
screen to screen
67. A P I S
In-App Purchasing
Ads
GameCircle
Fling AD
Amazon provides
support for
68. G E T F E AT U R E D O N A M A Z O N A P P S TO R E !
bit.ly/devspotlight2017
69. A M A Z O N A P P S TO R E D E V E L O P E R S U M M I T 2 0 1 7
DEVELOPER SUMMIT
NOVEMBER 7TH
ETC LONDON
155 BISHOPGATE, LONDON, UK
bit.ly/summit105