Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Developing for the Big Screen - GDG Berlin Andr...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Hasan Hosgel
October 29, 2014
Technology
91
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Developing for the Big Screen - GDG Berlin Android 2014 10 Meetup
Hasan Hosgel
October 29, 2014
More Decks by Hasan Hosgel
See All by Hasan Hosgel
What's new in PlayStore @ IO19 @ BerlinDroid May 2019
alosdev
0
110
Living on a green rocket field - DevFest Istanbul 2018
alosdev
1
250
Living on a green rocket field - Mobilization 2018
alosdev
1
200
Living on a green rocket field - GDG Berlin Android meetup
alosdev
2
230
Actions on Google - GDG Berlin Android Meetup February 2017
alosdev
0
190
PERFMATTERS for Android - DevFest Switzerland 2016
alosdev
0
220
Let's Map It! DevFest Hamburg 2016
alosdev
0
190
PERFMATTERS for Android - DroidCon VIenna 2016
alosdev
0
84
PERFMATTERS for Android - DroidCon Berlin 2016
alosdev
0
1.9k
Other Decks in Technology
See All in Technology
PQC移行の今 -- IETF からみた現在地
satokan
4
660
認知負荷を吸収し、プロダクトをまたぐPR Preview基盤の設計事例
taiki45
2
550
Making AI Agents Safe and Fast- Jev, Obsidian, and the Meta-Harness
x5gtrn
PRO
0
160
Lambda MicroVMsは常駐サーバーの代わりに なるか? Kiro Crew を動かして検証してみた / Kiro Crew on Lambda MicroVMs
k_adachi_01
2
340
プラットフォームを「作る」、 チームに「入り込む」
sansantech
PRO
0
390
【Findyテック文化祭ワークショップ】新卒エンジニア&採用担当と作る、 なりたい姿と今やるべき一歩
dip_tech
PRO
0
150
TiDBファミリーにDWHが新登場!! TiDB最新情報 / TiDB update 202609
yoshiakiyamasaki
0
160
AIエージェントを安全で速い現場監督にする:Jev・Obsidian・メタハーネス
x5gtrn
PRO
0
140
Swap and Memory Reclaim - Squeezing Out More RAM
ennael
PRO
1
1.4k
Kiro Meetup #8 Kiro アップデート (2026/3/21〜2026/9/24)
katzueno
1
310
Oracle Cloud Infrastructure(OCI):Onboarding Session(はじめてのOCI/Oracle Supportご利⽤ガイド)
oracle4engineer
PRO
3
21k
音声コミュニティを守るAI監視基盤_ 90%以上の入力削減を支えたServerless設計と運用判断
shuheioka123
0
120
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Prompt Engineering for Job Search
mfonobong
0
460
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.1k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
470
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Writing Fast Ruby
sferik
630
63k
Transcript
Developing for the Big Screen From Android TV to Chromecast
about me Hasan Hosgel G+: Hasan Hosgel Twitter: @alosdev Github:
alosdev Senior Developer @ImmobilienScout24
Prerequisite • casual consumption - not focused like on phone
• cinematic experience - 3 meter away • Simplicity - no touchpad
None
Navigation • D-Pad in two axis • enter Button •
Back • Home
None
Navigation support • use appropriate states for better recognotion of
focus/ selection • use sound - occasionally • use next focus targets - for defining own navigation flow ⇒ TEST IT properly
how to get started • Sample Project https://github.com/googlesamples/androidtv- Leanback/ •
DevByte Video https://www.youtube.com/watch? v=72K1VhjoL98
needed libraries • v17 leanback support library • v7 recyclerview
support library • v7 cardview support library forces to use also • v4 support library
AndroidManifest extension <activity android:name="MainActivity" android:label="@string/app_name" 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>
AndroidManifest extension <activity android:name="MainActivity" android:label="@string/app_name" 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>
AndroidManifest extension <activity android:name="MainActivity" android:label="@string/app_name" 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>
Not supported Hardware features • android.hardware.touchscreen • android.hardware.telephony • android.hardware.camera
• android.hardware.nfc • android.hardware.location.gps • android.hardware.microphone
avoid filtering in play store • 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
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") }
None
BrowseFragment
BrowseFragment
DetailFragment
VerticalGridFragment
SearchFragment
How to test? • ADT-1 • Nexus Player • Emulator
ChromeCast • Sender Application ◦ Android ◦ Chrome ◦ IOs
• Receiver Application ◦ HTML ⇒ register your receiver application https://cast. google.com/publish/ - costs 5$
needed libraries • v7 appcompat support library • v7 mediarouter
support library • google play services library forces to use also • v4 support library
Resources • Site: https://developers.google.com/cast/ • repositories: https://developers.google. com/cast/docs/downloads
Additional possibility for Android With the feature “mirror screen” you
can now use the “presentation mode” again for your Android application, like for MiraCast
Q & A