Slide 1

Slide 1 text

Introduction to Android TV development David Vávra, Avast Mobile

Slide 2

Slide 2 text

Computer- phone-like UI Remote control with 60+ buttons Fragmented developer ecosystem

Slide 3

Slide 3 text

Leanback content-focused UI Game controller or a phone Unified developer ecosystem

Slide 4

Slide 4 text

Demo time

Slide 5

Slide 5 text

Hardware Nexus Player available in Google Play in US and Canada. Price: $99 Intel Atom 1.8Ghz Quad-core with graphics, 1 GB RAM, 8 GB flash All 2015 4K and smart TV models. All 2015 Philips TV models. All 2015 UB and UH series models. Razer Forge TV - gaming console, Snapdragon quad-core 2.5Ghz + Ardeno GPU, available in Q1 2015 for $99, 4 controllers, “lapboard”

Slide 6

Slide 6 text

Design

Slide 7

Slide 7 text

Creative vision Casual Consumption Cinematic Experience Simplicity

Slide 8

Slide 8 text

Navigation

Slide 9

Slide 9 text

Content organization compile “com.android.support:leanback-v17:21.0.+” Android Studio → New Project → TV → Android TV Activity

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

Overscan

Slide 15

Slide 15 text

Development

Slide 16

Slide 16 text

Basics Full Android Lollipop Emulator Hardware-limited (GPS, telephony,...)

Slide 17

Slide 17 text

Recommendations Android notifications (category, local, ongoing) Periodically launch service to generate Don’t forget to remove them

Slide 18

Slide 18 text

Search ContentProvider with defined columns ○ TEXT, CONTENT_TYPE, PRODUCTION_YEAR required searchable.xml defining the search & Intents

Slide 19

Slide 19 text

Controllers 4 directions, SELECT, BACK, HOME @Override public boolean dispatchGenericMotionEvent(MotionEvent ev) @Override public boolean dispatchKeyEvent(KeyEvent event) Multiple controllers android:configChanges="keyboard|keyboardHidden|navigation"

Slide 20

Slide 20 text

Games Landscape, shared Overscan android:isGame="true" Play Game Services

Slide 21

Slide 21 text

How did I do MoodSync? github.com/destil/MoodSync Media Projection API Palette LIFX SDK

Slide 22

Slide 22 text

Avast Mobile is hiring [email protected]

Slide 23

Slide 23 text

Q & A +David Vávra @destil https://developer.android.com/design/tv https://developer.android.com/training/tv