google tv: la nuova frontiera android

38
gerdavax AT gmail DOT com Stefano Sanna Google TV: la nuova frontiera Android

Upload: stefano-sanna

Post on 05-Dec-2014

8.661 views

Category:

Technology


2 download

DESCRIPTION

Conquistato il mercato degli smartphone e avviato l'attacco al mondo dei tablet, Android si appresta a diventare protagonista del display più grande e più diffuso: la televisione. La piattaforma Google TV, recentemente aggiornata nel software e nell'hardware, rappresenta un'evoluzione importantissima e allo stesso tempo estremamente accessibile per gli sviluppatori Android: senza neppure una API aggiuntiva, il sistema operativo consente di scrivere app perfettamente adattate alla nuova UI e ai nuovi controller. Il talk presenta la piattaforma, il set-top box Sony e un'app dimostrativa.

TRANSCRIPT

Page 1: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT com

Stefano Sanna

Google TV: la nuova frontiera Android

Page 2: Google TV: la nuova frontiera Android

• Presentazioni

• Panoramica su Android

• Google TV• storia• come funziona• sviluppo di app

• DEMO & Conclusioni

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Agenda

Page 3: Google TV: la nuova frontiera Android

Responsabile Android Lab @ Open Reply

Co-autore del libro “Android Programmazione Avanzata”• (con E. Di Saverio, Ed. FAG)

Autore del libro “Java Micro Edition” • (Hoepli)

Supporter @ Codemotion since 2005 (JIP Day!)

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Speaker

Page 4: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Per gli utenti Android è...

Page 5: Google TV: la nuova frontiera Android

• Android non è solo il sistema operativo: è un progetto opensource, è una community di sviluppatori, è un’arena di manufacturer sempre più agguerriti...

• Le sue fondamenta basate su Linux lo rendono un’alternativa ideale a molte distribuzioni sviluppate ad hoc per i sistemi embedded e internet appliances

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Android è altrove!

Page 6: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Oggi

Page 7: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Domani

Page 8: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Oggi

Page 9: Google TV: la nuova frontiera Android

• 2007/11: Android è annunciato• 2008/09: T-Mobile G1 è il primo device Android• 2009/10: Arriva Android 2.0 Eclair e il Motorola Droid• 2010/05: Arriva Android 2.1 Froyo• 2010/06: Lancio della Google TV di prima generazione (piattaforma chiusa)• 2010/12: Android 2.3 Gingerbread introduce NFC• 2011/02: Android 3.0 e il Motorola Xoom aprono il mercato dei tablet• 2011/08: È pubblicato il Google TV SDK (beta)• 2011/10: La Google TV ora include l’Android Market• 2011/11: Android 4.0 Ice Cream Sandwich unifica tablet e smartphone• 2012/06: La nuova Google TV 2.0 compare su nuovi device• 2012/07: Arriva Jelly Bean 4.1• 2012/11: Arriva Jelly Bean 4.2

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Google TV nella storia della piattaforma Android

Page 10: Google TV: la nuova frontiera Android

• Tra i device Android “non convenzionali”, la Google TV è la piattaforma ufficiale per i (futuri?) servizi interattivi oltre smartphone e tablet

• Benché non ancora disponibile in Italia, la Google TV è stata lanciata in Europa (UK) nel 2012 ed è prevista la progressiva diffusione in altri Paesi

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Disponibilità

Page 11: Google TV: la nuova frontiera Android

• Prima generazione• Sony NSZ-GT1 (Blu-ray Player)• Sony NSX-40GT1 (Internet TV)• Logitech Revue (set-top box)

• Seconda generazione• LG 47G2/55G2 (Internet TV)• Sony NSZ-GS7 (set-top box)• Vizio Co-Star (set-top box)• ... altri in arrivo!

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Due generazioni

Page 12: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Setup domestico

HDMI OUTHDMI IN

TV con ingresso HDMI

Qualsiasi decoder DVB-T, DVB-S, DVB-C con uscita HDMI

Accesso ad Internet via Ethernet o Wi-Fi

USB 2.0 Host, con supporto USB storage

Page 13: Google TV: la nuova frontiera Android

• Logitech Revue• Basato su CPU Intel ATOM

• Aggiornato a Honeycomb 3.2 a fine 2012• Supporta ADK, HLS e USB storage• Piuttosto economico (circa €150 con tastiera wireless)

• Non è più in vendita (Logitech ha abbandonato Google TV), ma è possibile trovarlo ancora su ebay nuovo o usato

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Prima generazione

Page 14: Google TV: la nuova frontiera Android

• Sony NSZ-GS7• Primo set-top box lanciato in Europa (Luglio 2012)!• Basato su CPU ARM• A bordo Android Honeycomb 3.2• Non esattamente economico

(circa €250), ma con un controller molto potente

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Seconda generazione

Page 15: Google TV: la nuova frontiera Android

Android• Honeycomb 3.2• Second-screen app (Anymote)• Native USB Host

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Google TV per gli sviluppatori

https://developers.google.com/tv

Page 16: Google TV: la nuova frontiera Android

• La piattaforma Google TV introduce

rispetto alla piattaforma standard!

• Un nuovo Content Provider e alcune costanti forniscono gli strumenti per accedere alla lista dei canali (solo TV) e per filtrare la piattaforma rispetto a smartphone e tablet

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Google TV API

0 (ZERO) NUOVE API

Page 17: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Target Google TV: si decide tutto sul manifest

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.example.phototv" android:versionCode="1" android:versionName="1.0" >

<uses-sdk android:minSdkVersion="13" android:targetSdkVersion="15" />

<supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="false" android:smallScreens="false" android:xlargeScreens="false" />

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

<uses-permission android:name="com.google.android.tv.permission.READ_CHANNELS">

<application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:screenOrientation="unspecified" android:name=".PhotoTV" android:label="@string/app_name"> <intent-filter> [...] </intent-filter> </activity> </application>

</manifest>

Page 18: Google TV: la nuova frontiera Android

• La scelta migliore è dotarsi di un STB vero

• Se non disponibile, si può ricorrere al Google TV Add-on:

• Gira su Linux 64bit con kernel KVM• Non può essere eseguito su ambiente virtuale• Non supporta streaming video (Platform 1.0)

• No STB? No emulatore? Forse c’è la via...

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Ambiente di test

Page 19: Google TV: la nuova frontiera Android

• Effettuare la configurazione iniziale (lingua, dimensione schermo, rete, Google Account...)

• Il deployment delle app avviene attraverso la rete: le porte USB sono in modalità host e non sono accessibili ad adb

• Fortemente consigliato avere IP statici per STB e workstation di sviluppo

• Configurare il remote debugging (prox slide)• Se si utilizza un Logitech Revue, impostare

l’output a 720p (sigh!) per fare screenshot

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Configurazione del set-top box

Page 20: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Configurazione adb

AndroidDev:~ gdx$ adb connect GTV_IP_ADDRESS

set-top box

host

Page 21: Google TV: la nuova frontiera Android

• Le TV sono classificate come display “large”

• Schermi:• HD Ready (720p) classificati come tvdpi, 213 dpi• Full HD (1080p) classificati come xhdpi, 320 dpi

• 720p e 1080p realizzano la medesima risoluzione “indipendente”: 960x540dp

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Dimensioni e densità

Page 22: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Dimensioni, densità e distanza

30-50cm300cm

smartphone5” - 320dpi

TV Full HD30” - 320dpi

Page 23: Google TV: la nuova frontiera Android

La UI è a 10ft (circa 3m) dall’utente che• è in un ambiente rilassante o di svago• è in compagnia di amici, marito/moglie, figli...• è in un ambiente debolmente illuminato• potrebbe disporre di un impianto audio di alta qualità• non ha una tastiera né un mouse, ma uno o più telecomandi

più o meno equivalenti• si distrae prendendo una bibita, guardando il cellulare,

parlando con un amico

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

The 10ft environment

Page 24: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Un’occhiata al telecomando

D-PAD, BACK, MENU, HOME, PiP

Tastiera QWERTY illuminata

TRACKPAD con click fisico (come sul MacBook Pro)

Un accelerometro disabilita la tastiera QWERTY mentre si usa il trackpad e viceversa

Page 25: Google TV: la nuova frontiera Android

• È assolutamente consigliato l’uso di layout dinamici• Schermi diversi possono avere aree diverse di overscan: mai,

mai, mai... e poi mai! affidarsi a dimensioni assolute in pixel!• La view dell’app dovrebbe essere suddivisa in tre aree:

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

UI

Source:https://developers.google.com/tv/android/docs/gtv_android_patterns

Page 26: Google TV: la nuova frontiera Android

• Navigation• Le app devono prevedere l’utilizzo del D-PAD• Tutte le viste devono essere accessibili senza touch pad

• Controlli• Evitare la digitazione: fornire, se possibile, suggerimenti o

scorciatoie...• Limitare l’uso del sistema di puntamento• La trappola: “è come un grosso tablet”. Falso! Manca la

gesture “swipe”• Si riscopre il valore del BACK fisico

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Good practice

Page 27: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Good practice

Source:https://developers.google.com/tv/android/docs/gtv_android_patterns

Page 28: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Oltre le guideline (Photo TV @ GDG Fest Firenze)

CENTER

CENTER

NAV:LEFT/RIGHT

CENTER

BACK

BACK

MENUNAV:

UP/DOWN

NAV:UP/DOWN/LEFT/RIGHT

MENU

NAV:LEFT/RIGHT

Page 29: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

È arrivato il momento di divertirsi! :-)

Page 30: Google TV: la nuova frontiera Android

• Il set-top box della Google TV...• è sempre a casa e nella stessa stanza (altro che “mobile”!)• è sempre nella stessa stanza• ha una UI gigantesca e comodamente accessibile• è sempre alimentato• è sempre connesso alla Rete

• Può diventare l’hub per i servizi di domotica:• interfaccia tra la casa e i suoi occupanti• gateway della casa verso il web

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Un occhio alla domotica

Page 31: Google TV: la nuova frontiera Android

• Hardware:• Arduino UNO rev3 o Arduino MEGA ADK rev3• Termometro digitale 1-wire Dallas DS18B20• Potenziometro lineare multigiri

• Sensore di umidità (opzionale) • Electronic Brick Shield v 4.0 Pro (opzionale)

• Software:• usb-serial-for-android • Gauge Widget by F. Martens

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Un sistema domotico “casereccio”

Page 32: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Connessioni

Page 33: Google TV: la nuova frontiera Android

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Ok, facci vedere la demo!

DEMO

Page 34: Google TV: la nuova frontiera Android

• La Google TV ha le sue specificità:• Lo storage USB non è montato su /mnt/sdcard o simili, ma

su un path che contiene l’ID del device connesso. Meglio affidarsi al broadcast Intent di notifica

• Il chip FT232RL di Arduino 2009 e Arduino 10000 non riesce a comunicare con la libreria usb-serial, dichiarata compatibile. Arduino Uno e Mega ADK funzionano

• È consigliabile chiudere esplicitamente la connessione di adb verso il STB: adb disconnect

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Diario di bordo...

I sorgenti Android e Arduino dell’app Home Control saranno pubblicati entro due settimane sul blog dello speaker

http://www.gerdavax.it

Page 35: Google TV: la nuova frontiera Android

• Smartphone e tablet hanno stuzzicato idee brillanti, la Google TV offre nuovi spazi e contesti praticamente inesplorati

• “Enlarge your screen”! :-)• è possibile raggiungere nuovi contesti di utilizzo (molto

social) e di integrazione con i device mobili (2nd screen)• grande opportunità di coinvolgere utenti non avvezzi all’uso

di computer, tablet e smartphone• la Google TV si candida ad essere l’hub di servizi di home

automation e ausilio alle attività domestiche

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Conclusioni

Page 36: Google TV: la nuova frontiera Android

• Mara Marzocchi, Ugo Landini, Marco Casario, Gosia Sosnowska, Chiara Russo e tutto il team di Codemotion per l’enorme lavoro che fanno ogni anno per la community italiana degli sviluppatori software

• Matteo “dekra” Bonifazi per la preparazione della prima versione di questa presentazione

• Freddy Martens (atstechlab.wordpress.com) per il componente Gauge

• Il team di Arduino, per aver creato questo meraviglioso strumento di prototipazione

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Ringraziamenti

Page 37: Google TV: la nuova frontiera Android

• Google TV• http://www.google.com/tv/• https://developers.google.com/tv/• http://googletv.blogspot.it/• http://code.google.com/p/usb-serial-for-android/

• Hardware and community• http://store.sony.com/p/NSZ-GS7/en/p/NSZGS7• http://www.vizio.com/costar/overview• http://www.gtvhacker.com/

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Riferimenti e risorse

Page 38: Google TV: la nuova frontiera Android

• mail: gerdavax AT gmail DOT com• blog: http://www.gerdavax.it• twitter: @gerdavax• slideshare: http://www.slideshare.net/gerdavax• Linkedin: http://www.linkedin.com/in/gerdavax

gerdavax AT gmail DOT comGoogle TV - Stefano Sanna

Contatti