Advertisement
Advertisement

More Related Content

Advertisement

Google TV: la nuova frontiera Android

  1. Stefano Sanna Google TV: la nuova frontiera Android gerdavax AT gmail DOT com
  2. Agenda Google TV - Stefano Sanna gerdavax AT gmail DOT com • Presentazioni • Panoramica su Android • Google TV • storia • come funziona • sviluppo di app • DEMO & Conclusioni
  3. Speaker Google TV - Stefano Sanna gerdavax AT gmail DOT com 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!)
  4. Per gli utenti Android è... Google TV - Stefano Sanna gerdavax AT gmail DOT com
  5. Android è altrove! Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  6. Oggi Google TV - Stefano Sanna gerdavax AT gmail DOT com
  7. Domani Google TV - Stefano Sanna gerdavax AT gmail DOT com
  8. Oggi Google TV - Stefano Sanna gerdavax AT gmail DOT com
  9. Google TV nella storia della piattaforma Android Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  10. Disponibilità Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  11. Due generazioni Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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!
  12. Setup domestico Google TV - Stefano Sanna gerdavax AT gmail DOT com TV con ingresso HDMI Qualsiasi decoder DVB-T, DVB- S, DVB-C con uscita HDMI HDMI IN HDMI OUT Accesso ad Internet via USB 2.0 Host, con Ethernet o Wi-Fi supporto USB storage
  13. Prima generazione Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  14. Seconda generazione Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  15. Google TV per gli sviluppatori Google TV - Stefano Sanna gerdavax AT gmail DOT com • Android • Honeycomb 3.2 • Second-screen app (Anymote) • Native USB Host https://developers.google.com/tv
  16. Google TV API Google TV - Stefano Sanna gerdavax AT gmail DOT com • La piattaforma Google TV introduce 0 (ZERO) NUOVE API 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
  17. Target Google TV: si decide tutto sul manifest Google TV - Stefano Sanna gerdavax AT gmail DOT com <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>
  18. Ambiente di test Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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...
  19. Configurazione del set-top box Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  20. Configurazione adb Google TV - Stefano Sanna gerdavax AT gmail DOT com set-top box host AndroidDev:~ gdx$ adb connect GTV_IP_ADDRESS
  21. Dimensioni e densità Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  22. Dimensioni, densità e distanza Google TV - Stefano Sanna gerdavax AT gmail DOT com TV Full HD 30” - 320dpi smartphone 5” - 320dpi 30-50cm 300cm
  23. The 10ft environment Google TV - Stefano Sanna gerdavax AT gmail DOT com 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
  24. Un’occhiata al telecomando Google TV - Stefano Sanna gerdavax AT gmail DOT com D-PAD, BACK, MENU, HOME, PiP Un accelerometro disabilita la tastiera QWERTY mentre si usa il trackpad e viceversa TRACKPAD con click fisico (come sul MacBook Pro) Tastiera QWERTY illuminata
  25. UI Google TV - Stefano Sanna gerdavax AT gmail DOT com • È 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: Source: https://developers.google.com/tv/android/docs/gtv_android_patterns
  26. Good practice Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  27. Good practice Google TV - Stefano Sanna gerdavax AT gmail DOT com Source: https://developers.google.com/tv/android/docs/gtv_android_patterns
  28. Oltre le guideline (Photo TV @ GDG Fest Firenze) Google TV - Stefano Sanna gerdavax AT gmail DOT com NAV: CENTER UP/DOWN/LEFT/RIGHT MENU NAV: UP/DOWN BACK CENTER MENU CENTER NAV: LEFT/RIGHT NAV: BACK LEFT/RIGHT
  29. È arrivato il momento di divertirsi! :-) Google TV - Stefano Sanna gerdavax AT gmail DOT com
  30. Un occhio alla domotica Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  31. Un sistema domotico “casereccio” Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  32. Connessioni Google TV - Stefano Sanna gerdavax AT gmail DOT com
  33. Ok, facci vedere la demo! Google TV - Stefano Sanna gerdavax AT gmail DOT com MO DE
  34. Diario di bordo... Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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 I sorgenti Android e Arduino dell’app Home Control saranno pubblicati entro due settimane sul blog dello speaker http://www.gerdavax.it
  35. Conclusioni Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  36. Ringraziamenti Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
  37. Riferimenti e risorse Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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/
  38. Contatti Google TV - Stefano Sanna gerdavax AT gmail DOT com • 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
Advertisement