107
www.immobilienscout24.de Developing for the Big Screen - from Android TV to Chromecast DevFest Istanbul 2014 | 06.12.2014 | Hasan Hosgel

DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Embed Size (px)

Citation preview

Page 1: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

www.immobilienscout24.de

Developing for the Big Screen - from Android TV to Chromecast DevFest Istanbul 2014 | 06.12.2014 | Hasan Hosgel

Page 2: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

About me

+HasanHosgel

@alosdev

alosdev

hosgel

CO-Organizer

Developer

Developing for the Big Screen | Hasan Hosgel

Page 3: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

About ImmobilienScout24

Germany’s largest real estate listing company. > 10.5 Mio. Monthly unique users > 1.5 Mio. real estates > 300 Mio. detail views > 1500 Servers ~ 8 Mio. App downloads

> 3.5 Mio. Android > 55% mobile traffic

Developing for the Big Screen | Hasan Hosgel

Page 4: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Once upon a time

Developing for the Big Screen | Hasan Hosgel Image Source https://www.flickr.com/photos/theinfamousgdub/1765952198

Page 5: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Has time to create something new

Developing for the Big Screen | Hasan Hosgel Image Source https://www.flickr.com/photos/slworking/8095803230

Page 6: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

While sitting in the living room…

Developing for the Big Screen | Hasan Hosgel Image Source http://upload.wikimedia.org/wikipedia/commons/4/4c/Children_watching_TV.jpg

Page 7: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Image source: http://upload.wikimedia.org/wikipedia/commons/b/b2/Google_tv_logo.svg

Developing for the Big Screen | Hasan Hosgel

Page 8: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Wait

Image source: http://upload.wikimedia.org/wikipedia/commons/b/b2/Google_tv_logo.svg

Developing for the Big Screen | Hasan Hosgel

Page 9: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Oops

Image source: http://upload.wikimedia.org/wikipedia/commons/b/b2/Google_tv_logo.svg

Developing for the Big Screen | Hasan Hosgel

Page 10: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Android TV

Image source: http://www.android.com/tv/

Developing for the Big Screen | Hasan Hosgel

Page 11: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Device

Image source: http://www.android.com/tv/

Developing for the Big Screen | Hasan Hosgel

Page 12: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Let’s build the ground

Image source: http://www.flickr.com/photos/hertenberger/1434191066/

Developing for the Big Screen | Hasan Hosgel

Page 13: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Before we start programming

Developing for the Big Screen | Hasan Hosgel Image Source https://www.flickr.com/photos/pgautier/166610944

Page 14: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Prerequisite

Developing for the Big Screen | Hasan Hosgel

Page 15: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Prerequisite

● casual consumption - not focused like on

phone

Developing for the Big Screen | Hasan Hosgel

Page 16: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Prerequisite

● casual consumption - not focused like on

phone

● cinematic experience - 3 meter away

Developing for the Big Screen | Hasan Hosgel

Page 17: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Prerequisite

● casual consumption - not focused like on

phone

● cinematic experience - 3 meter away

● Simplicity - no touchpad

Developing for the Big Screen | Hasan Hosgel

Page 18: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

Developing for the Big Screen | Hasan Hosgel

Page 19: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

● Home

Developing for the Big Screen | Hasan Hosgel

Page 20: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

● Home

● Enter Button

Developing for the Big Screen | Hasan Hosgel

Page 21: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

● Home

● Enter Button

● Back

Developing for the Big Screen | Hasan Hosgel

Page 22: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

● Home

● Enter Button

● Back

● D-Pad in two axis

Developing for the Big Screen | Hasan Hosgel

Page 23: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation with D-Pad

Source: http://www.flickr.com/photos/16210667@N02/9172895225

Developing for the Big Screen | Hasan Hosgel

Page 24: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

Developing for the Big Screen | Hasan Hosgel

Page 25: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

● use appropriate states for better

recognotion of focus/ selection

Developing for the Big Screen | Hasan Hosgel

Page 26: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

● use appropriate states for better

recognotion of focus/ selection

● use sound – occasionally

Developing for the Big Screen | Hasan Hosgel

Page 27: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

● use appropriate states for better

recognotion of focus/ selection

● use sound – occasionally

● use next focus targets - for defining own

navigation flow

Developing for the Big Screen | Hasan Hosgel

Page 28: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Navigation

● use appropriate states for better

recognotion of focus/ selection

● use sound – occasionally

● use next focus targets - for defining own

navigation flow

èTest it properly

Developing for the Big Screen | Hasan Hosgel

Page 29: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Start

Developing for the Big Screen | Hasan Hosgel Image Source https://www.flickr.com/photos/thevancats/422670456

Page 30: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

Developing for the Big Screen | Hasan Hosgel

Page 31: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

● v17 leanback support library

Developing for the Big Screen | Hasan Hosgel

Page 32: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

● v17 leanback support library

● v7 recyclerview support library

Developing for the Big Screen | Hasan Hosgel

Page 33: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

● v17 leanback support library

● v7 recyclerview support library

● v7 cardview support library

Developing for the Big Screen | Hasan Hosgel

Page 34: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

● v17 leanback support library

● v7 recyclerview support library

● v7 cardview support library

è Forces you to use also

● v4 support library

Developing for the Big Screen | Hasan Hosgel

Page 35: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml changes

<manifest ...> ...

... </manifest>

Developing for the Big Screen | Hasan Hosgel

Page 36: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml changes

<manifest ...> ...

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />

... </manifest>

Developing for the Big Screen | Hasan Hosgel

Page 37: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml changes

<manifest ...> ...

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />

... </manifest>

Developing for the Big Screen | Hasan Hosgel

Page 38: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml changes

<manifest ...> ...

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />

... </manifest>

Developing for the Big Screen | Hasan Hosgel

Page 39: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml changes

<manifest ...> ...

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />

... </manifest>

Developing for the Big Screen | Hasan Hosgel

Page 40: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml changes

<manifest ...> ...

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />

<uses-feature android:name="android.software.leanback" android:required="true" />

... </manifest>

Developing for the Big Screen | Hasan Hosgel

Page 41: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml changes

<manifest ...> ...

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />

<uses-feature android:name="android.software.leanback" android:required="true" />

... </manifest>

Developing for the Big Screen | Hasan Hosgel

Page 42: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml changes

<manifest ...> ...

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />

<uses-feature android:name="android.software.leanback" android:required="true" />

... </manifest>

Developing for the Big Screen | Hasan Hosgel

Page 43: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml changes

<manifest ...> ...

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />

<uses-feature android:name="android.software.leanback" android:required="true" />

... </manifest>

Developing for the Big Screen | Hasan Hosgel

Page 44: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml application changes

Developing for the Big Screen | Hasan Hosgel

Page 45: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml application changes

<application android:banner="@drawable/banner" > ... </application>

Developing for the Big Screen | Hasan Hosgel

Page 46: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml application changes

<application android:banner="@drawable/banner" > ... </application>

Developing for the Big Screen | Hasan Hosgel

Page 47: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml application changes

<application android:banner="@drawable/banner" > ... </application>

Developing for the Big Screen | Hasan Hosgel

Page 48: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml application changes

<application android:banner="@drawable/banner" > ... <activity android:name="com.example.android.TvActivity“ android:theme="@style/Theme.Leanback"> </activity> </application>

Developing for the Big Screen | Hasan Hosgel

Page 49: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml application changes

<application android:banner="@drawable/banner" > ... <activity android:name="com.example.android.TvActivity“ android:theme="@style/Theme.Leanback"> </activity> </application>

Developing for the Big Screen | Hasan Hosgel

Page 50: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml application changes

<application android:banner="@drawable/banner" > ... <activity android:name="com.example.android.TvActivity“ android:theme="@style/Theme.Leanback"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> </intent-filter> </activity> </application>

Developing for the Big Screen | Hasan Hosgel

Page 51: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

AndroidManifest.xml application changes

<application android:banner="@drawable/banner" > ... <activity android:name="com.example.android.TvActivity“ android:theme="@style/Theme.Leanback"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> </intent-filter> </activity> </application>

Developing for the Big Screen | Hasan Hosgel

Page 52: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Not Supported Hardware Features

● android.hardware.touchscreen

● android.hardware.telephony

● android.hardware.camera

● android.hardware.nfc

● android.hardware.location.gps

● android.hardware.microphone

Developing for the Big Screen | Hasan Hosgel

Page 53: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

avoid filtering in Playstore

Developing for the Big Screen | Hasan Hosgel

Page 54: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

avoid filtering in Playstore

set the attribute “required” to “false” in

AndroidManifest

Developing for the Big Screen | Hasan Hosgel

Page 55: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

avoid filtering in Playstore

set the attribute “required” to “false” in

AndroidManifest

è If you don’t to this, the application cannot

be found on the play store for TV

Developing for the Big Screen | Hasan Hosgel

Page 56: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Recognize TV programmatically

Developing for the Big Screen | Hasan Hosgel

Page 57: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Recognize TV programmatically

UiModeManager uiModeManager = (UiModeManager) getSystemService(UI_MODE_SERVICE);

Developing for the Big Screen | Hasan Hosgel

Page 58: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Recognize TV programmatically

UiModeManager uiModeManager = (UiModeManager) getSystemService(UI_MODE_SERVICE); if (uiModeManager.getCurrentModeType() == Configuration.UI_MODE_TYPE_TELEVISION) { Log.d(TAG, "Running on a TV Device") } else { Log.d(TAG, "Running on a non-TV Device") }

Developing for the Big Screen | Hasan Hosgel

Page 59: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Recognize TV programmatically

UiModeManager uiModeManager = (UiModeManager) getSystemService(UI_MODE_SERVICE); if (uiModeManager.getCurrentModeType() == Configuration.UI_MODE_TYPE_TELEVISION) { Log.d(TAG, "Running on a TV Device") } else { Log.d(TAG, "Running on a non-TV Device") }

Developing for the Big Screen | Hasan Hosgel

Page 60: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Consider Overscan

Developing for the Big Screen | Hasan Hosgel

Page 61: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Avoid Layout Anti-Patterns

Developing for the Big Screen | Hasan Hosgel

Page 62: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Avoid Layout Anti-Patterns

● Reuse of phone or tablet layout

Developing for the Big Screen | Hasan Hosgel

Page 63: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Avoid Layout Anti-Patterns

● Reuse of phone or tablet layout

● Usage of ActionBar

Developing for the Big Screen | Hasan Hosgel

Page 64: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Avoid Layout Anti-Patterns

● Reuse of phone or tablet layout

● Usage of ActionBar

● Usage of ViewPager

Developing for the Big Screen | Hasan Hosgel

Page 65: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Let’s take a deeper look at the used Design Pattern

Developing for the Big Screen | Hasan Hosgel Image Source https://www.flickr.com/photos/dsittig/12311006886

Page 66: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Model View Constroller vs. Model View Presenter

Developing for the Big Screen | Hasan Hosgel

Source: http://i.imgur.com/xbeB5.png

Page 67: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Model View Constroller vs. Model View Presenter

Developing for the Big Screen | Hasan Hosgel

Source: http://i.imgur.com/xbeB5.png

Page 68: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Some Base Classes

● BrowseFragment

Developing for the Big Screen | Hasan Hosgel

Page 69: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Browse Fragment

Developing for the Big Screen | Hasan Hosgel

Source: https://github.com/googlesamples/androidtv-Leanback/

Page 70: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Browse Fragment

Developing for the Big Screen | Hasan Hosgel

Source: https://github.com/googlesamples/androidtv-Leanback/

Page 71: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Some Base Classes

● BrowseFragment

● DetailFragment

Developing for the Big Screen | Hasan Hosgel

Page 72: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Detail Fragment

Developing for the Big Screen | Hasan Hosgel

Source: https://github.com/googlesamples/androidtv-Leanback/

Page 73: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Detail Fragment

Developing for the Big Screen | Hasan Hosgel

Source: https://github.com/googlesamples/androidtv-Leanback/

Page 74: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Some Base Classes

● BrowseFragment

● DetailFragment

● SearchFragment

Developing for the Big Screen | Hasan Hosgel

Page 75: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Search Fragment

Developing for the Big Screen | Hasan Hosgel

Source: https://github.com/googlesamples/androidtv-Leanback/

Page 76: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Some Base Classes

● BrowseFragment

● DetailFragment

● SearchFragment

● Recommendations (no base class)

Developing for the Big Screen | Hasan Hosgel

Page 77: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Recommendation

Developing for the Big Screen | Hasan Hosgel

Source: https://github.com/googlesamples/androidtv-Leanback/

Page 78: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Testing

● Emulator

● ADT-1

● Nexus Player

Developing for the Big Screen | Hasan Hosgel

Page 79: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Finished waiting for $$$

Source: http://www.flickr.com/photos/16210667@N02/9172895225

Developing for the Big Screen | Hasan Hosgel

Page 80: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Some days later a friend sends a message

Developing for the Big Screen | Hasan Hosgel Image Source https://www.flickr.com/photos/jparise/214330120

Page 81: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Chromecast

Developing for the Big Screen | Hasan Hosgel Image Source http://www.google.de/intl/de/chrome/devices/chromecast/

Page 82: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Chromecast

Developing for the Big Screen | Hasan Hosgel Image Source http://www.google.de/intl/de/chrome/devices/chromecast/

Page 83: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Starting the conversation

Developing for the Big Screen | Hasan Hosgel Image Source http://pixabay.com/de/katze-hauskate-tier-augen-blick-278187/

Page 84: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

You can conquer a new world

Developing for the Big Screen | Hasan Hosgel Image Source http://pixabay.com/de/katze-wand-loch-überraschung-alt-491730/

Page 85: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Developing for Chomecast

● Registration (cost 5$)

Developing for the Big Screen | Hasan Hosgel

Page 86: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Developing for Chomecast

● Registration (cost 5$)

"  Register application and developer

devices

Developing for the Big Screen | Hasan Hosgel

Page 87: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

You can conquer a new world

Developing for the Big Screen | Hasan Hosgel

Page 88: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Developing for Chomecast

● Registration (cost 5$)

"  Register application and developer

devices

● Create sender app

"  Android, IOs, Chrome

Developing for the Big Screen | Hasan Hosgel

Page 89: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Developing for Chomecast

● Registration (cost 5$)

"  Register application and developer

devices

● Create sender app

"  Android, IOs, Chrome

Developing for the Big Screen | Hasan Hosgel

Page 90: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

Developing for the Big Screen | Hasan Hosgel

Page 91: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

● v7 appcompat support library

Developing for the Big Screen | Hasan Hosgel

Page 92: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

● v7 appcompat support library

● v7 mediarouter support library

Developing for the Big Screen | Hasan Hosgel

Page 93: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

● v7 appcompat support library

● v7 mediarouter support library

● google play services library

Developing for the Big Screen | Hasan Hosgel

Page 94: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

● v7 appcompat support library

● v7 mediarouter support library

● google play services library

è Forces you to use also

Developing for the Big Screen | Hasan Hosgel

Page 95: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Needed libraries

● v7 appcompat support library

● v7 mediarouter support library

● google play services library

è Forces you to use also

● v4 support library

Developing for the Big Screen | Hasan Hosgel

Page 96: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Developing for Chomecast

● Registration (cost 5$)

"  Register application and developer

devices

● Create sender application

"  Android, IOs, Chrome

● Create receiver application

"  HTML

Developing for the Big Screen | Hasan Hosgel

Page 97: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Wait again for $$$

Source: http://www.flickr.com/photos/16210667@N02/9172895225

Developing for the Big Screen | Hasan Hosgel

Page 98: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Users complaining: they can’t use it on Chromecast!

Developing for the Big Screen | Hasan Hosgel Image Source http://pixabay.com/de/baby-tränen-kleinkind-traurig-443393/

Page 99: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

After you understand the problem

Developing for the Big Screen | Hasan Hosgel Image Source http://pixabay.com/de/darstellung-porträt-schreien-schrei-89189/

Page 100: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Presenation API

Developing for the Big Screen | Hasan Hosgel

Page 101: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Presenation API

● In Android API Level 17 support for

secondary screen was added

Developing for the Big Screen | Hasan Hosgel

Page 102: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Presenation API

● In Android API Level 17 support for

secondary screen was added

è Android Mirroring can display different Uis

for device and what is displayed ChromeCast

Developing for the Big Screen | Hasan Hosgel

Page 103: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Presenation API

● In Android API Level 17 support for

secondary screen was added

è Android Mirroring can display different Uis

for device and what is displayed ChromeCast

Similar to MiraCast

Developing for the Big Screen | Hasan Hosgel

Page 104: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Now we can rule the world!

Developing for the Big Screen | Hasan Hosgel Image Source http://www.bhmpics.com/success_kid-wallpapers.html

Page 105: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

Q & A

Source: http://www.flickr.com/photos/21496790@N06/5065834411/ Developing for the Big Screen | Hasan Hosgel

Page 106: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

www.immobilienscout24.de

Thanks for your Attention! İlginiz için teşekkürler! Contact: +HasanHosgel Twitter: @alosdev Github: alosdev

Developing for the Big Screen - from Android TV to Chromecast https://de.slideshare.net/hosgel/dev-fest-istanbul2014developingforthebig-screenfromandroidtvtochromecast

Page 107: DevFest Istanbul 2014 - Developing for the Big Screen - from Android TV to Chromecast

material

●  AndroidTV

" http://developer.android.com/training/tv/

" https://github.com/googlesamples/androidtv-Leanback

●  ChromeCast

" https://developers.google.com/cast/

" https://github.com/googlecast

●  Presentation API

" http://developer.android.com/reference/android/app/

Presentation.html

" https://github.com/googlecast/CastPresentation-android

Developing for the Big Screen | Hasan Hosgel