SlideShare a Scribd company logo
1 of 36
Download to read offline
Developing for Android TV
Mihai Risca, Application Engineer
Alexander Weggerle, Technical Consulting Engineer
2
Agenda
• What are Android TV and the Nexus Player
• How to create/adapt an Android application for Android TV
• How to publish an Android TV application
• Optimizing applications for the Nexus Player
• Q&A
Android TV and the Nexus Player
4
Android TV
• It’s Android
• it’s also Chromecast
• Apps (streaming and others)
• Games (casual and more)
• AOSP compliant
• Leanback Launcher, Google Apps and Play Store
5
Nexus Player
• First Android TV device / The only Nexus
• Quad-Core Intel Silvermont CPU @1.83Ghz
• PowerVR™ Series 6 G6430 GPU
• 64bit, OpenGL ES 3.1
• WiFi 802.11ac*
• 1GB ram, 8GB flash, USB-OTG
• 99$
• Gamepad sold separately**
* Ethernet can be added using standard USB adapters
** Android TV supports almost any USB/Bluetooth HID Gamepads
Demo
Developing for Android TV and the Nexus Player
8
Developing for Android TV
Create a new Android application or add support to an existing one by:
1. Adding/reusing a TV-compatible activity that will receive the leanback intent
2. Integrating TV-specific assets
3. Supporting non-touchscreen input
4. Adapting the UX of your app to Android TV
All this should be done to an existing Android app, so you can support phones,
tablets, and TVs from your same source code and APK.
You can still choose to create a TV-specific APK and upload it as a new
application or as an alternative APK using Play Store “multiple APKs” feature.
9
1. The Leanback Intent
<activity android:name=".TvMainActivity“ >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category
android:name="android.intent.category.LEANBACK_LAUNCHER"
/>
</intent-filter>
</activity>
10
2. The Banner
<activity or <application
…
android:banner="@drawable/ic_banner"
…
>
• Name of your application
• No transparency
• Size:160x90dp -> 320x180px image to put inside drawable-xhdpi folder.
11
3. Supporting non-touchscreen input
<uses-feature
android:name="android.hardware.touchscreen"
android:required="false" />
Adjust D-PAD navigation:
android:focusable="true", <requestFocus /> / .requestFocus()
android:nextFocusDown="@+id/whatever1"
android:nextFocusUp="@id/whatever2"
For custom Views: KeyEvent.KEYCODE_DPAD_(UP|DOWN|LEFT|RIGHT)
12
4. Adapting the UX
Start from android:Theme.NoTitleBar
Or Theme.Leanback from the Leanback support library:
compile "com.android.support:leanback-v17:21.0.+“
Add overscan margins to your views: (Leanback Views and Fragments already have these)
android:layout_marginTop="27dp"
android:layout_marginLeft="48dp"
android:layout_marginRight="48dp"
android:layout_marginBottom="27dp"
Note: Leanback support library requires API 17 but you can still support lower API levels
from your app:
• Use Theme.Leanback from –v21 resource folders, use Leanback classes only from your
TV-part.
• Set <uses-sdk tools:overrideLibrary="android.support.v17.leanback" />
13
Going further
 Using ready-to-use elements from the Leanback Support Library
 Supporting multiple controllers
 Integrating the recommendation system
 Integrating the search system
Publishing apps to the Android TV Play Store
15
Play Store additional requirements
Is your app a Game ?
<android:isGame="true">
Supporting Gamepads ?
<uses-feature android:name="android.hardware.gamepad“ android:required="false" />
Supporting only Android TV ?
<uses-feature android:name="android.software.leanback" android:required="true" />
16
A classic trap: implicitly required features
Having portrait activities declared inside your app ? Need to specify that your app can be used
on hardware that doesn’t support “portrait” mode:
<uses-feature android:name="android.hardware.screen.portrait“ android:required="false" />
Use of certain permissions also implicitly requires hardware features that aren’t available:
• android.hardware.location implied by android.permission.ACCESS_FINE_LOCATION
• android.hardware.camera.autofocus and android.hardware.camera implied
by android.permission.CAMERA
• android.hardware.microphone implied by android.permission.RECORD_AUDIO
• android.hardware.telephony implied by many telephony-specific permissions
17
Submitting your application
1. Check you’re compliant with all the guidelines
2. Upload your APK
3. Upload your banner and a screenshot
4. Opt-in for distribution to the Play Store on Android TV
Optimizing apps for the Nexus Player
19
Android* Devices with Intel Inside
(Some of them – there are more than hundred, not all could be listed here)
Motorola*
RAZR i
ZTE* Grand X
IN
Lava* Xolo
X900
Megafon*
Mint
Lenovo*
K800
Orange*
San Diego
2012, 2013…
Lenovo* K900 ASUS Fonepad™
Note FHD - 6”
ZTE* Geek Samsung* Galaxy™ Tab 3 10.1”
2014… Asus* Zenfones 4/5/6 ASUS* Transformer Pad
TF103CG/TF303CL
Dell* Venue 8 7000
Intel® Yolo Acer* Liquid C1Etisalat E-20*
ASUS* MeMO Pad
FHD 10
ASUS* Fonepad™ 7” Dell* Venue 7/8
KD Interactive
Kurio Tablet Toshiba
Excite Go
Acer* Iconia Tab 8
/ One 8
Nexus PlayerLenovo* S8Asus* MemoPad 7/8
Asus* FonePad 7/8
Lenovo Yoga Tab 2
8/10/13
Tesco Hudl 2
20
These devices are all fully compatible with Android*
ARM* ecosystem
Android* SDK apps
− These will directly work. We’re optimizing the
Runtimes for Intel® platforms.
Android* NDK apps
− Most will run without any recompilation on consumer platforms.
− Android NDK provides an x86 toolchain since 2011
− A simple recompile using the Android NDK yields the best performance
− If there is specific processor dependent code, porting may be necessary
Android Runtime
Core Libraries
DVM / ART
21
3rd party libraries/engines x86 support
• Game engines/libraries with x86 support:
• Havok Anarchy SDK: android x86 target available
• Unreal Engine 3: android x86 target available
• Marmalade: android x86 target available
• NexPlayer SDK: x86 supported by default in latest releases
• Cocos2Dx: set APP_ABI in Application.mk
• FMOD: x86 lib already included, set ABIs in Application.mk
• AppGameKit: x86 lib included, set ABIs in Application.mk
• libgdx: x86 supported by default in latest releases
• AppPortable: x86 support now available
• Adobe Air: x86 support now available
• Unity: x86 support available in 5.0 beta, soon-to-be released for earlier versions
• …
22
Include all ABIs by setting APP_ABI to all in jni/Application.mk:
APP_ABI=all
The NDK will generate optimized code for all target ABIs
You can also pass APP_ABI variable to ndk-build, and specify each ABI:
ndk-build APP_ABI=x86 #all32 and all64 are also possible values.
Configuring NDK Target ABIs
Build ARM64 libs
Build x86_64 libs
Build mips64 libs
Build ARMv7a libs
Build ARMv5 libs
Build x86 libs
Build mips libs
23
“Fat” APKs
By default, an APK contains libraries for every supported ABIs.
Install lib/armeabi-v7a libs
Install lib/x86 libs
Install lib/x86_64 libraries
libs/x86
libs/x86_64
APK file
…
Libs for the selected ABI are installed, the others remain inside the downloaded APK
… … …
libs/armeabi-v7a
24
Multiple APKs
Google Play* supports multiple APKs for the same application.
What compatible APK will be chosen for a device entirely depends on the
android:versionCode
If you have multiple APKs for multiple ABIs, best is to simply prefix your
current version code with a digit representing the ABI:
2310 3310 6310 7310
You can have more options for multiple APKs, here is a convention that will
work if you’re using all of these:
x86ARMv7 ARM64 X86_64
25
Multiple APKs – clean solution with gradle
splits {
abi {
enable true
reset()
include 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a'
universalApk true
}
}
// map for the version code
project.ext.versionCodes = ['armeabi': 1, 'armeabi-v7a': 2, 'arm64-v8a': 3, 'mips': 5,
'mips64': 6, 'x86': 8, 'x86_64': 9]
android.applicationVariants.all { variant ->
// assign different version code for each output
variant.outputs.each { output ->
output.versionCodeOverride =
project.ext.versionCodes.get(output.abiFilter, 0) * 1000000 +
android.defaultConfig.versionCode
}
}
26
Uploading Multiple APKs to the store
Switch to Advanced mode before
uploading the second APK.
Intel® Tools for Android* apps developers
HAXM, INDE, System Studio, XDK…
28
Intel x86
Emulator
Accelerator
Intel x86 Atom
System Image
Faster Android* Emulation on Intel® Architecture
Based Host PC
• Pre-built Intel® Atom™ Processor Images
available through the Android* SDK manager
• Intel® Hardware Accelerated Execution Manager
(Intel® HAXM) for Mac and Windows uses Intel®
Virtualization Technology (Intel® VT) to
accelerate Android emulator
• Intel® VT is already supported in Linux* by kvm
kernel driver
29
Intel INDE
29
Increasing productivity at every step along the development chain
A productivity tool built with today’s developer in mind.
 IDE support: Eclipse*, Microsoft Visual Studio*
 Host support: Microsoft Windows* 7-8.1
 Target support: Android 4.3 & up devices on ARM* and Intel®
Architecture, Microsoft Windows* 7-8.1 devices on Intel®
Architecture
Environment set-up & maintenance
Analyze & Debug ShipCompileCreate
 Frame Debugger
 System Analyzer
 Platform Analyzer
 Frame Analyzer
 Compute Code
Builder
 Android Versions 4.3
& up, Intel®
Architecture & ARM*
devices.
 Microsoft Windows*
7-8.1 Intel®
Architecture devices
 GNU C++
Compiler
 Intel® C++
Compiler
 Compute Code
Builder
 Media
 Threading
 Compute Code
Builder
Download: intel.com/software/inde
30
For on-device app testing: Intel®
GPA System Analyzer
Real-time Remote Performance and Power Profiling
Intel® GPA System
Analyzer running
on a PC
Android
Device
USB adb Connection
Wi-Fi adb Connection
Data
Real-time charts:
• CPU metrics
• Graphics API level metrics
• Processor graphics hardware metrics
• Power metrics
Download Intel® GPA for FREE at intel.com/software/GPA
31
Debugging OpenGL ES code with Frame Debugger
Download Intel® GPA for FREE at intel.com/software/GPA
32
Intel® System Studio 2015 Overview
32
DEBUGGERS & TRACING ANALYZERS COMPILER & LIBRARIES
JTAG Interface System & Application code running on Linux* 1, Android* or Windows*
System Application Power & Performance
CPU / Graphics
Memory &
Threading
C/C++
Compiler
Image, Signal, Media, Data & Math
Processing
Deep system-wide insight into power, performance, and reliability that helps
accelerate time to market of Intel Architecture-based mobile and embedded systems
and embedded applications
1 Linux*, Embedded Linux, Wind River* Linux*, Yocto Project*, Tizen*Embedded or Mobile System
Learn more at: http://intel.ly/system-studio
1 Linux*, Embedded Linux, Wind River* Linux*, Yocto Project*, Tizen*
33
Intel® VTune™ Amplifier XE 2015 for Systems
CPU Performance and Power Analysis
• Identify Hotspots and inefficient code
• Cache Misses, Branch Mispredictions
• Drill down from Java & C/C++ to assembler code
34
Does the application run well on the hardware?
34
35
Summary
• Apps submission started only on November 3rd
(good opportunity to bring more visibility to your apps and games)
• Adding Android TV support isn’t necessarily much work
• No need for maintaining a separate APK
• Better x86 apps compatibility is nice to have for your apps/libs/engines
• Intel provides powerful tool suites for Android development
Q&A

More Related Content

What's hot

InduSoft Web Studio 8.0 + Service Pack Two Overview
InduSoft Web Studio 8.0 + Service Pack Two OverviewInduSoft Web Studio 8.0 + Service Pack Two Overview
InduSoft Web Studio 8.0 + Service Pack Two OverviewAVEVA
 
Softeq Development Corp.
Softeq Development Corp.Softeq Development Corp.
Softeq Development Corp.Eugene Volkov
 
InduSoft Web Studio 8.0 + SP1 + Patch One Review
InduSoft Web Studio 8.0 + SP1 + Patch One ReviewInduSoft Web Studio 8.0 + SP1 + Patch One Review
InduSoft Web Studio 8.0 + SP1 + Patch One ReviewAVEVA
 
Build your MVP on AWS - AWS Startup Day Johannesburg.pdf
Build your MVP on AWS - AWS Startup Day Johannesburg.pdfBuild your MVP on AWS - AWS Startup Day Johannesburg.pdf
Build your MVP on AWS - AWS Startup Day Johannesburg.pdfAmazon Web Services
 
I-Byte Technology July 2021
I-Byte Technology July 2021I-Byte Technology July 2021
I-Byte Technology July 2021EGBG Services
 
Introduction to InduSoft Web Studio 8.1 + Service Pack 1
Introduction to InduSoft Web Studio 8.1 + Service Pack 1Introduction to InduSoft Web Studio 8.1 + Service Pack 1
Introduction to InduSoft Web Studio 8.1 + Service Pack 1AVEVA
 
App Optimizations Using Qualcomm Snapdragon LLVM Compiler for Android
App Optimizations Using Qualcomm Snapdragon LLVM Compiler for AndroidApp Optimizations Using Qualcomm Snapdragon LLVM Compiler for Android
App Optimizations Using Qualcomm Snapdragon LLVM Compiler for AndroidQualcomm Developer Network
 
IBM MobileFirst - Hybrid App Development
IBM MobileFirst - Hybrid App DevelopmentIBM MobileFirst - Hybrid App Development
IBM MobileFirst - Hybrid App DevelopmentWim Tobback
 
An Introduction To Android
An Introduction To AndroidAn Introduction To Android
An Introduction To AndroidGoogleTecTalks
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantAnimesh Singh
 
Designing Machine-level HMI with Studio 5000 View Designer® Demonstration
Designing Machine-level HMI with Studio 5000 View Designer® DemonstrationDesigning Machine-level HMI with Studio 5000 View Designer® Demonstration
Designing Machine-level HMI with Studio 5000 View Designer® DemonstrationRockwell Automation
 
InduSoft IoTView
InduSoft IoTViewInduSoft IoTView
InduSoft IoTViewAVEVA
 
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...apidays
 
Re Inventing Enterprise IT around APIs and Apps
Re Inventing Enterprise IT around APIs and AppsRe Inventing Enterprise IT around APIs and Apps
Re Inventing Enterprise IT around APIs and AppsWSO2
 
What is New in Wonderware InduSoft Web Studio 8.0+SP2
What is New in Wonderware InduSoft Web Studio 8.0+SP2What is New in Wonderware InduSoft Web Studio 8.0+SP2
What is New in Wonderware InduSoft Web Studio 8.0+SP2AVEVA
 
Tips and Tricks for InduSoft Web Studio-August 2017
Tips and Tricks for InduSoft Web Studio-August 2017Tips and Tricks for InduSoft Web Studio-August 2017
Tips and Tricks for InduSoft Web Studio-August 2017AVEVA
 

What's hot (20)

Introduction to InTouch Machine Edition (ITME)
Introduction to InTouch Machine Edition (ITME)Introduction to InTouch Machine Edition (ITME)
Introduction to InTouch Machine Edition (ITME)
 
MWLUG Bluemix
MWLUG BluemixMWLUG Bluemix
MWLUG Bluemix
 
InTouch Machine Edition Advantages and Features
InTouch Machine Edition Advantages and FeaturesInTouch Machine Edition Advantages and Features
InTouch Machine Edition Advantages and Features
 
InduSoft Web Studio 8.0 + Service Pack Two Overview
InduSoft Web Studio 8.0 + Service Pack Two OverviewInduSoft Web Studio 8.0 + Service Pack Two Overview
InduSoft Web Studio 8.0 + Service Pack Two Overview
 
Softeq Development Corp.
Softeq Development Corp.Softeq Development Corp.
Softeq Development Corp.
 
InduSoft Web Studio 8.0 + SP1 + Patch One Review
InduSoft Web Studio 8.0 + SP1 + Patch One ReviewInduSoft Web Studio 8.0 + SP1 + Patch One Review
InduSoft Web Studio 8.0 + SP1 + Patch One Review
 
Build your MVP on AWS - AWS Startup Day Johannesburg.pdf
Build your MVP on AWS - AWS Startup Day Johannesburg.pdfBuild your MVP on AWS - AWS Startup Day Johannesburg.pdf
Build your MVP on AWS - AWS Startup Day Johannesburg.pdf
 
I-Byte Technology July 2021
I-Byte Technology July 2021I-Byte Technology July 2021
I-Byte Technology July 2021
 
Introduction to InduSoft Web Studio 8.1 + Service Pack 1
Introduction to InduSoft Web Studio 8.1 + Service Pack 1Introduction to InduSoft Web Studio 8.1 + Service Pack 1
Introduction to InduSoft Web Studio 8.1 + Service Pack 1
 
App Optimizations Using Qualcomm Snapdragon LLVM Compiler for Android
App Optimizations Using Qualcomm Snapdragon LLVM Compiler for AndroidApp Optimizations Using Qualcomm Snapdragon LLVM Compiler for Android
App Optimizations Using Qualcomm Snapdragon LLVM Compiler for Android
 
IBM MobileFirst - Hybrid App Development
IBM MobileFirst - Hybrid App DevelopmentIBM MobileFirst - Hybrid App Development
IBM MobileFirst - Hybrid App Development
 
An Introduction To Android
An Introduction To AndroidAn Introduction To Android
An Introduction To Android
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
 
Designing Machine-level HMI with Studio 5000 View Designer® Demonstration
Designing Machine-level HMI with Studio 5000 View Designer® DemonstrationDesigning Machine-level HMI with Studio 5000 View Designer® Demonstration
Designing Machine-level HMI with Studio 5000 View Designer® Demonstration
 
InduSoft IoTView
InduSoft IoTViewInduSoft IoTView
InduSoft IoTView
 
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
 
Re Inventing Enterprise IT around APIs and Apps
Re Inventing Enterprise IT around APIs and AppsRe Inventing Enterprise IT around APIs and Apps
Re Inventing Enterprise IT around APIs and Apps
 
Push notifications on Nokia X
Push notifications on Nokia XPush notifications on Nokia X
Push notifications on Nokia X
 
What is New in Wonderware InduSoft Web Studio 8.0+SP2
What is New in Wonderware InduSoft Web Studio 8.0+SP2What is New in Wonderware InduSoft Web Studio 8.0+SP2
What is New in Wonderware InduSoft Web Studio 8.0+SP2
 
Tips and Tricks for InduSoft Web Studio-August 2017
Tips and Tricks for InduSoft Web Studio-August 2017Tips and Tricks for InduSoft Web Studio-August 2017
Tips and Tricks for InduSoft Web Studio-August 2017
 

Viewers also liked

Espectáculos de strippers para despedidas de soltero en Salamanca
Espectáculos de strippers para despedidas de soltero en SalamancaEspectáculos de strippers para despedidas de soltero en Salamanca
Espectáculos de strippers para despedidas de soltero en SalamancaDespedidas Soltero Salamanca
 
Brian Gallardo (Professional Persona Project)
Brian Gallardo (Professional Persona Project)Brian Gallardo (Professional Persona Project)
Brian Gallardo (Professional Persona Project)gallardoestate
 
Präsentation saalto kontaktpflege journalisten
Präsentation saalto   kontaktpflege journalistenPräsentation saalto   kontaktpflege journalisten
Präsentation saalto kontaktpflege journalistenCyberForumKA
 
Comunicat 30
Comunicat 30Comunicat 30
Comunicat 30kruskis
 
The Neuroscience of Wisdom - The Development and Application of Wisdom in a B...
The Neuroscience of Wisdom - The Development and Application of Wisdom in a B...The Neuroscience of Wisdom - The Development and Application of Wisdom in a B...
The Neuroscience of Wisdom - The Development and Application of Wisdom in a B...Merryck_Mentors
 
MS EXCEL 2007 VENTAJAS PESTAÑAS DE INICIO
MS EXCEL 2007 VENTAJAS PESTAÑAS DE INICIOMS EXCEL 2007 VENTAJAS PESTAÑAS DE INICIO
MS EXCEL 2007 VENTAJAS PESTAÑAS DE INICIOJOSE MARIA VÈLAS
 
Control de procesos
Control de procesosControl de procesos
Control de procesosPFSGRUPO
 
Imágenes Multiperspectiva
Imágenes MultiperspectivaImágenes Multiperspectiva
Imágenes MultiperspectivaDavid Calabuig
 
Husqvarna accesorios 2011_es
Husqvarna accesorios 2011_esHusqvarna accesorios 2011_es
Husqvarna accesorios 2011_esmaquinariagrau
 
Role of public supercomputing centers in the promotion of HPC on Cloud: the C...
Role of public supercomputing centers in the promotion of HPC on Cloud: the C...Role of public supercomputing centers in the promotion of HPC on Cloud: the C...
Role of public supercomputing centers in the promotion of HPC on Cloud: the C...Andrés Gómez
 
SPID e Identità Digitale - Una sfida per l'Italia che cambia (aggiornamento) ...
SPID e Identità Digitale - Una sfida per l'Italia che cambia (aggiornamento) ...SPID e Identità Digitale - Una sfida per l'Italia che cambia (aggiornamento) ...
SPID e Identità Digitale - Una sfida per l'Italia che cambia (aggiornamento) ...Guido Allegrezza
 
Enhance performance by benchmarking your bench strength
Enhance performance by benchmarking your bench strengthEnhance performance by benchmarking your bench strength
Enhance performance by benchmarking your bench strengthDr. Donald M. Carmont
 

Viewers also liked (20)

Espectáculos de strippers para despedidas de soltero en Salamanca
Espectáculos de strippers para despedidas de soltero en SalamancaEspectáculos de strippers para despedidas de soltero en Salamanca
Espectáculos de strippers para despedidas de soltero en Salamanca
 
Brian Gallardo (Professional Persona Project)
Brian Gallardo (Professional Persona Project)Brian Gallardo (Professional Persona Project)
Brian Gallardo (Professional Persona Project)
 
Präsentation saalto kontaktpflege journalisten
Präsentation saalto   kontaktpflege journalistenPräsentation saalto   kontaktpflege journalisten
Präsentation saalto kontaktpflege journalisten
 
Comunicat 30
Comunicat 30Comunicat 30
Comunicat 30
 
Physical Phone Personalisation
Physical  Phone PersonalisationPhysical  Phone Personalisation
Physical Phone Personalisation
 
The Neuroscience of Wisdom - The Development and Application of Wisdom in a B...
The Neuroscience of Wisdom - The Development and Application of Wisdom in a B...The Neuroscience of Wisdom - The Development and Application of Wisdom in a B...
The Neuroscience of Wisdom - The Development and Application of Wisdom in a B...
 
MS EXCEL 2007 VENTAJAS PESTAÑAS DE INICIO
MS EXCEL 2007 VENTAJAS PESTAÑAS DE INICIOMS EXCEL 2007 VENTAJAS PESTAÑAS DE INICIO
MS EXCEL 2007 VENTAJAS PESTAÑAS DE INICIO
 
Hoy
HoyHoy
Hoy
 
Cv eliana entizne + dni
Cv eliana entizne + dniCv eliana entizne + dni
Cv eliana entizne + dni
 
ALODIA CV
ALODIA CVALODIA CV
ALODIA CV
 
Control de procesos
Control de procesosControl de procesos
Control de procesos
 
Musicolandia
MusicolandiaMusicolandia
Musicolandia
 
Imágenes Multiperspectiva
Imágenes MultiperspectivaImágenes Multiperspectiva
Imágenes Multiperspectiva
 
Husqvarna accesorios 2011_es
Husqvarna accesorios 2011_esHusqvarna accesorios 2011_es
Husqvarna accesorios 2011_es
 
Role of public supercomputing centers in the promotion of HPC on Cloud: the C...
Role of public supercomputing centers in the promotion of HPC on Cloud: the C...Role of public supercomputing centers in the promotion of HPC on Cloud: the C...
Role of public supercomputing centers in the promotion of HPC on Cloud: the C...
 
El Buscón, metabuscador de la BNE
El Buscón, metabuscador de la BNEEl Buscón, metabuscador de la BNE
El Buscón, metabuscador de la BNE
 
Me enamore de miiii
Me enamore de miiiiMe enamore de miiii
Me enamore de miiii
 
SPID e Identità Digitale - Una sfida per l'Italia che cambia (aggiornamento) ...
SPID e Identità Digitale - Una sfida per l'Italia che cambia (aggiornamento) ...SPID e Identità Digitale - Una sfida per l'Italia che cambia (aggiornamento) ...
SPID e Identità Digitale - Una sfida per l'Italia che cambia (aggiornamento) ...
 
Enhance performance by benchmarking your bench strength
Enhance performance by benchmarking your bench strengthEnhance performance by benchmarking your bench strength
Enhance performance by benchmarking your bench strength
 
Agustina
AgustinaAgustina
Agustina
 

Similar to Developing for Android TV and the Nexus player - Mihai Risca & Alexander Weggerle, Intel

[Ultracode Munich Meetup #7] Building Apps for Nexus Player & Android TV
[Ultracode Munich Meetup #7] Building Apps for Nexus Player & Android TV[Ultracode Munich Meetup #7] Building Apps for Nexus Player & Android TV
[Ultracode Munich Meetup #7] Building Apps for Nexus Player & Android TVBeMyApp
 
Android Meetup, Илья Лёвин
Android Meetup, Илья ЛёвинAndroid Meetup, Илья Лёвин
Android Meetup, Илья ЛёвинGDG Saint Petersburg
 
Android on IA devices and Intel Tools
Android on IA devices and Intel ToolsAndroid on IA devices and Intel Tools
Android on IA devices and Intel ToolsXavier Hallade
 
Android development
Android developmentAndroid development
Android developmentRhitik Kumar
 
Introduction to android sessions new
Introduction to android   sessions newIntroduction to android   sessions new
Introduction to android sessions newJoe Jacob
 
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...Paris Open Source Summit
 
Mobile Web Apps and the Intel® XDK
Mobile Web Apps and the Intel® XDKMobile Web Apps and the Intel® XDK
Mobile Web Apps and the Intel® XDKIntel® Software
 
Embedded Android: Android beyond the smartphone
Embedded Android: Android beyond the smartphoneEmbedded Android: Android beyond the smartphone
Embedded Android: Android beyond the smartphoneChris Simmonds
 
Droidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform AnatomyDroidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform AnatomyBenjamin Zores
 
[Android Codefest Germany] Adding x86 target to your Android app by Xavier Ha...
[Android Codefest Germany] Adding x86 target to your Android app by Xavier Ha...[Android Codefest Germany] Adding x86 target to your Android app by Xavier Ha...
[Android Codefest Germany] Adding x86 target to your Android app by Xavier Ha...BeMyApp
 
Software training report
Software training reportSoftware training report
Software training reportNatasha Bains
 
Droidcon uk2012 androvm
Droidcon uk2012 androvmDroidcon uk2012 androvm
Droidcon uk2012 androvmdfages
 
Android beyond the smartphone
Android beyond the smartphoneAndroid beyond the smartphone
Android beyond the smartphoneChris Simmonds
 
Developing Multi-OS Native Mobile Applications with Intel INDE
Developing Multi-OS Native Mobile Applications with Intel INDEDeveloping Multi-OS Native Mobile Applications with Intel INDE
Developing Multi-OS Native Mobile Applications with Intel INDEIntel® Software
 
Developing for Android-Types of Android Application
Developing for Android-Types of Android ApplicationDeveloping for Android-Types of Android Application
Developing for Android-Types of Android ApplicationNandini Prabhu
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_authlzongren
 
Android Applications Development: A Quick Start Guide
Android Applications Development: A Quick Start GuideAndroid Applications Development: A Quick Start Guide
Android Applications Development: A Quick Start GuideSergii Zhuk
 
Game Development with Unity3D 5 in Bandung, Indonesia
Game Development with Unity3D 5 in Bandung, IndonesiaGame Development with Unity3D 5 in Bandung, Indonesia
Game Development with Unity3D 5 in Bandung, IndonesiaHarum Nugroho
 

Similar to Developing for Android TV and the Nexus player - Mihai Risca & Alexander Weggerle, Intel (20)

[Ultracode Munich Meetup #7] Building Apps for Nexus Player & Android TV
[Ultracode Munich Meetup #7] Building Apps for Nexus Player & Android TV[Ultracode Munich Meetup #7] Building Apps for Nexus Player & Android TV
[Ultracode Munich Meetup #7] Building Apps for Nexus Player & Android TV
 
Android Meetup, Илья Лёвин
Android Meetup, Илья ЛёвинAndroid Meetup, Илья Лёвин
Android Meetup, Илья Лёвин
 
Android on IA devices and Intel Tools
Android on IA devices and Intel ToolsAndroid on IA devices and Intel Tools
Android on IA devices and Intel Tools
 
Android development
Android developmentAndroid development
Android development
 
Introduction to android sessions new
Introduction to android   sessions newIntroduction to android   sessions new
Introduction to android sessions new
 
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...
 
Mobile Web Apps and the Intel® XDK
Mobile Web Apps and the Intel® XDKMobile Web Apps and the Intel® XDK
Mobile Web Apps and the Intel® XDK
 
Embedded Android: Android beyond the smartphone
Embedded Android: Android beyond the smartphoneEmbedded Android: Android beyond the smartphone
Embedded Android: Android beyond the smartphone
 
Droidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform AnatomyDroidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform Anatomy
 
Android
Android Android
Android
 
[Android Codefest Germany] Adding x86 target to your Android app by Xavier Ha...
[Android Codefest Germany] Adding x86 target to your Android app by Xavier Ha...[Android Codefest Germany] Adding x86 target to your Android app by Xavier Ha...
[Android Codefest Germany] Adding x86 target to your Android app by Xavier Ha...
 
Software training report
Software training reportSoftware training report
Software training report
 
Droidcon uk2012 androvm
Droidcon uk2012 androvmDroidcon uk2012 androvm
Droidcon uk2012 androvm
 
Android beyond the smartphone
Android beyond the smartphoneAndroid beyond the smartphone
Android beyond the smartphone
 
Android zensar
Android zensarAndroid zensar
Android zensar
 
Developing Multi-OS Native Mobile Applications with Intel INDE
Developing Multi-OS Native Mobile Applications with Intel INDEDeveloping Multi-OS Native Mobile Applications with Intel INDE
Developing Multi-OS Native Mobile Applications with Intel INDE
 
Developing for Android-Types of Android Application
Developing for Android-Types of Android ApplicationDeveloping for Android-Types of Android Application
Developing for Android-Types of Android Application
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 
Android Applications Development: A Quick Start Guide
Android Applications Development: A Quick Start GuideAndroid Applications Development: A Quick Start Guide
Android Applications Development: A Quick Start Guide
 
Game Development with Unity3D 5 in Bandung, Indonesia
Game Development with Unity3D 5 in Bandung, IndonesiaGame Development with Unity3D 5 in Bandung, Indonesia
Game Development with Unity3D 5 in Bandung, Indonesia
 

More from Codemotion Tel Aviv

Keynote: Trends in Modern Application Development - Gilly Dekel, IBM
Keynote: Trends in Modern Application Development - Gilly Dekel, IBMKeynote: Trends in Modern Application Development - Gilly Dekel, IBM
Keynote: Trends in Modern Application Development - Gilly Dekel, IBMCodemotion Tel Aviv
 
Angular is one fire(base)! - Shmuela Jacobs
Angular is one fire(base)! - Shmuela JacobsAngular is one fire(base)! - Shmuela Jacobs
Angular is one fire(base)! - Shmuela JacobsCodemotion Tel Aviv
 
Demystifying docker networking black magic - Lorenzo Fontana, Kiratech
Demystifying docker networking black magic - Lorenzo Fontana, KiratechDemystifying docker networking black magic - Lorenzo Fontana, Kiratech
Demystifying docker networking black magic - Lorenzo Fontana, KiratechCodemotion Tel Aviv
 
Faster deep learning solutions from training to inference - Amitai Armon & Ni...
Faster deep learning solutions from training to inference - Amitai Armon & Ni...Faster deep learning solutions from training to inference - Amitai Armon & Ni...
Faster deep learning solutions from training to inference - Amitai Armon & Ni...Codemotion Tel Aviv
 
Facts about multithreading that'll keep you up at night - Guy Bar on, Vonage
Facts about multithreading that'll keep you up at night - Guy Bar on, VonageFacts about multithreading that'll keep you up at night - Guy Bar on, Vonage
Facts about multithreading that'll keep you up at night - Guy Bar on, VonageCodemotion Tel Aviv
 
Master the Art of the AST (and Take Control of Your JS!) - Yonatan Mevorach, ...
Master the Art of the AST (and Take Control of Your JS!) - Yonatan Mevorach, ...Master the Art of the AST (and Take Control of Your JS!) - Yonatan Mevorach, ...
Master the Art of the AST (and Take Control of Your JS!) - Yonatan Mevorach, ...Codemotion Tel Aviv
 
Unleash the power of angular Reactive Forms - Nir Kaufman, 500Tech
Unleash the power of angular Reactive Forms - Nir Kaufman, 500TechUnleash the power of angular Reactive Forms - Nir Kaufman, 500Tech
Unleash the power of angular Reactive Forms - Nir Kaufman, 500TechCodemotion Tel Aviv
 
Can we build an Azure IoT controlled device in less than 40 minutes that cost...
Can we build an Azure IoT controlled device in less than 40 minutes that cost...Can we build an Azure IoT controlled device in less than 40 minutes that cost...
Can we build an Azure IoT controlled device in less than 40 minutes that cost...Codemotion Tel Aviv
 
Actors and Microservices - Can two walk together? - Rotem Hermon, Gigya
Actors and Microservices - Can two walk together? - Rotem Hermon, GigyaActors and Microservices - Can two walk together? - Rotem Hermon, Gigya
Actors and Microservices - Can two walk together? - Rotem Hermon, GigyaCodemotion Tel Aviv
 
How to Leverage Machine Learning (R, Hadoop, Spark, H2O) for Real Time Proces...
How to Leverage Machine Learning (R, Hadoop, Spark, H2O) for Real Time Proces...How to Leverage Machine Learning (R, Hadoop, Spark, H2O) for Real Time Proces...
How to Leverage Machine Learning (R, Hadoop, Spark, H2O) for Real Time Proces...Codemotion Tel Aviv
 
My Minecraft Smart Home: Prototyping the internet of uncanny things - Sascha ...
My Minecraft Smart Home: Prototyping the internet of uncanny things - Sascha ...My Minecraft Smart Home: Prototyping the internet of uncanny things - Sascha ...
My Minecraft Smart Home: Prototyping the internet of uncanny things - Sascha ...Codemotion Tel Aviv
 
Distributed Systems explained (with NodeJS) - Bruno Bossola, JUG Torino
Distributed Systems explained (with NodeJS) - Bruno Bossola, JUG TorinoDistributed Systems explained (with NodeJS) - Bruno Bossola, JUG Torino
Distributed Systems explained (with NodeJS) - Bruno Bossola, JUG TorinoCodemotion Tel Aviv
 
Containerised ASP.NET Core apps with Kubernetes
Containerised ASP.NET Core apps with KubernetesContainerised ASP.NET Core apps with Kubernetes
Containerised ASP.NET Core apps with KubernetesCodemotion Tel Aviv
 
Fullstack DDD with ASP.NET Core and Anguar 2 - Ronald Harmsen, NForza
Fullstack DDD with ASP.NET Core and Anguar 2 - Ronald Harmsen, NForzaFullstack DDD with ASP.NET Core and Anguar 2 - Ronald Harmsen, NForza
Fullstack DDD with ASP.NET Core and Anguar 2 - Ronald Harmsen, NForzaCodemotion Tel Aviv
 
The Art of Decomposing Monoliths - Kfir Bloch, Wix
The Art of Decomposing Monoliths - Kfir Bloch, WixThe Art of Decomposing Monoliths - Kfir Bloch, Wix
The Art of Decomposing Monoliths - Kfir Bloch, WixCodemotion Tel Aviv
 
SOA Lessons Learnt (or Microservices done Better) - Sean Farmar, Particular S...
SOA Lessons Learnt (or Microservices done Better) - Sean Farmar, Particular S...SOA Lessons Learnt (or Microservices done Better) - Sean Farmar, Particular S...
SOA Lessons Learnt (or Microservices done Better) - Sean Farmar, Particular S...Codemotion Tel Aviv
 
S3, Cassandra or Outer Space? Dumping Time Series Data using Spark - Demi Ben...
S3, Cassandra or Outer Space? Dumping Time Series Data using Spark - Demi Ben...S3, Cassandra or Outer Space? Dumping Time Series Data using Spark - Demi Ben...
S3, Cassandra or Outer Space? Dumping Time Series Data using Spark - Demi Ben...Codemotion Tel Aviv
 
Getting Physical with Web Bluetooth - Uri Shaked, BlackBerry
Getting Physical with Web Bluetooth - Uri Shaked, BlackBerryGetting Physical with Web Bluetooth - Uri Shaked, BlackBerry
Getting Physical with Web Bluetooth - Uri Shaked, BlackBerryCodemotion Tel Aviv
 
Web based virtual reality - Tanay Pant, Mozilla
Web based virtual reality - Tanay Pant, MozillaWeb based virtual reality - Tanay Pant, Mozilla
Web based virtual reality - Tanay Pant, MozillaCodemotion Tel Aviv
 
Material Design Demytified - Ran Nachmany, Google
Material Design Demytified - Ran Nachmany, GoogleMaterial Design Demytified - Ran Nachmany, Google
Material Design Demytified - Ran Nachmany, GoogleCodemotion Tel Aviv
 

More from Codemotion Tel Aviv (20)

Keynote: Trends in Modern Application Development - Gilly Dekel, IBM
Keynote: Trends in Modern Application Development - Gilly Dekel, IBMKeynote: Trends in Modern Application Development - Gilly Dekel, IBM
Keynote: Trends in Modern Application Development - Gilly Dekel, IBM
 
Angular is one fire(base)! - Shmuela Jacobs
Angular is one fire(base)! - Shmuela JacobsAngular is one fire(base)! - Shmuela Jacobs
Angular is one fire(base)! - Shmuela Jacobs
 
Demystifying docker networking black magic - Lorenzo Fontana, Kiratech
Demystifying docker networking black magic - Lorenzo Fontana, KiratechDemystifying docker networking black magic - Lorenzo Fontana, Kiratech
Demystifying docker networking black magic - Lorenzo Fontana, Kiratech
 
Faster deep learning solutions from training to inference - Amitai Armon & Ni...
Faster deep learning solutions from training to inference - Amitai Armon & Ni...Faster deep learning solutions from training to inference - Amitai Armon & Ni...
Faster deep learning solutions from training to inference - Amitai Armon & Ni...
 
Facts about multithreading that'll keep you up at night - Guy Bar on, Vonage
Facts about multithreading that'll keep you up at night - Guy Bar on, VonageFacts about multithreading that'll keep you up at night - Guy Bar on, Vonage
Facts about multithreading that'll keep you up at night - Guy Bar on, Vonage
 
Master the Art of the AST (and Take Control of Your JS!) - Yonatan Mevorach, ...
Master the Art of the AST (and Take Control of Your JS!) - Yonatan Mevorach, ...Master the Art of the AST (and Take Control of Your JS!) - Yonatan Mevorach, ...
Master the Art of the AST (and Take Control of Your JS!) - Yonatan Mevorach, ...
 
Unleash the power of angular Reactive Forms - Nir Kaufman, 500Tech
Unleash the power of angular Reactive Forms - Nir Kaufman, 500TechUnleash the power of angular Reactive Forms - Nir Kaufman, 500Tech
Unleash the power of angular Reactive Forms - Nir Kaufman, 500Tech
 
Can we build an Azure IoT controlled device in less than 40 minutes that cost...
Can we build an Azure IoT controlled device in less than 40 minutes that cost...Can we build an Azure IoT controlled device in less than 40 minutes that cost...
Can we build an Azure IoT controlled device in less than 40 minutes that cost...
 
Actors and Microservices - Can two walk together? - Rotem Hermon, Gigya
Actors and Microservices - Can two walk together? - Rotem Hermon, GigyaActors and Microservices - Can two walk together? - Rotem Hermon, Gigya
Actors and Microservices - Can two walk together? - Rotem Hermon, Gigya
 
How to Leverage Machine Learning (R, Hadoop, Spark, H2O) for Real Time Proces...
How to Leverage Machine Learning (R, Hadoop, Spark, H2O) for Real Time Proces...How to Leverage Machine Learning (R, Hadoop, Spark, H2O) for Real Time Proces...
How to Leverage Machine Learning (R, Hadoop, Spark, H2O) for Real Time Proces...
 
My Minecraft Smart Home: Prototyping the internet of uncanny things - Sascha ...
My Minecraft Smart Home: Prototyping the internet of uncanny things - Sascha ...My Minecraft Smart Home: Prototyping the internet of uncanny things - Sascha ...
My Minecraft Smart Home: Prototyping the internet of uncanny things - Sascha ...
 
Distributed Systems explained (with NodeJS) - Bruno Bossola, JUG Torino
Distributed Systems explained (with NodeJS) - Bruno Bossola, JUG TorinoDistributed Systems explained (with NodeJS) - Bruno Bossola, JUG Torino
Distributed Systems explained (with NodeJS) - Bruno Bossola, JUG Torino
 
Containerised ASP.NET Core apps with Kubernetes
Containerised ASP.NET Core apps with KubernetesContainerised ASP.NET Core apps with Kubernetes
Containerised ASP.NET Core apps with Kubernetes
 
Fullstack DDD with ASP.NET Core and Anguar 2 - Ronald Harmsen, NForza
Fullstack DDD with ASP.NET Core and Anguar 2 - Ronald Harmsen, NForzaFullstack DDD with ASP.NET Core and Anguar 2 - Ronald Harmsen, NForza
Fullstack DDD with ASP.NET Core and Anguar 2 - Ronald Harmsen, NForza
 
The Art of Decomposing Monoliths - Kfir Bloch, Wix
The Art of Decomposing Monoliths - Kfir Bloch, WixThe Art of Decomposing Monoliths - Kfir Bloch, Wix
The Art of Decomposing Monoliths - Kfir Bloch, Wix
 
SOA Lessons Learnt (or Microservices done Better) - Sean Farmar, Particular S...
SOA Lessons Learnt (or Microservices done Better) - Sean Farmar, Particular S...SOA Lessons Learnt (or Microservices done Better) - Sean Farmar, Particular S...
SOA Lessons Learnt (or Microservices done Better) - Sean Farmar, Particular S...
 
S3, Cassandra or Outer Space? Dumping Time Series Data using Spark - Demi Ben...
S3, Cassandra or Outer Space? Dumping Time Series Data using Spark - Demi Ben...S3, Cassandra or Outer Space? Dumping Time Series Data using Spark - Demi Ben...
S3, Cassandra or Outer Space? Dumping Time Series Data using Spark - Demi Ben...
 
Getting Physical with Web Bluetooth - Uri Shaked, BlackBerry
Getting Physical with Web Bluetooth - Uri Shaked, BlackBerryGetting Physical with Web Bluetooth - Uri Shaked, BlackBerry
Getting Physical with Web Bluetooth - Uri Shaked, BlackBerry
 
Web based virtual reality - Tanay Pant, Mozilla
Web based virtual reality - Tanay Pant, MozillaWeb based virtual reality - Tanay Pant, Mozilla
Web based virtual reality - Tanay Pant, Mozilla
 
Material Design Demytified - Ran Nachmany, Google
Material Design Demytified - Ran Nachmany, GoogleMaterial Design Demytified - Ran Nachmany, Google
Material Design Demytified - Ran Nachmany, Google
 

Recently uploaded

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Recently uploaded (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Developing for Android TV and the Nexus player - Mihai Risca & Alexander Weggerle, Intel

  • 1. Developing for Android TV Mihai Risca, Application Engineer Alexander Weggerle, Technical Consulting Engineer
  • 2. 2 Agenda • What are Android TV and the Nexus Player • How to create/adapt an Android application for Android TV • How to publish an Android TV application • Optimizing applications for the Nexus Player • Q&A
  • 3. Android TV and the Nexus Player
  • 4. 4 Android TV • It’s Android • it’s also Chromecast • Apps (streaming and others) • Games (casual and more) • AOSP compliant • Leanback Launcher, Google Apps and Play Store
  • 5. 5 Nexus Player • First Android TV device / The only Nexus • Quad-Core Intel Silvermont CPU @1.83Ghz • PowerVR™ Series 6 G6430 GPU • 64bit, OpenGL ES 3.1 • WiFi 802.11ac* • 1GB ram, 8GB flash, USB-OTG • 99$ • Gamepad sold separately** * Ethernet can be added using standard USB adapters ** Android TV supports almost any USB/Bluetooth HID Gamepads
  • 7. Developing for Android TV and the Nexus Player
  • 8. 8 Developing for Android TV Create a new Android application or add support to an existing one by: 1. Adding/reusing a TV-compatible activity that will receive the leanback intent 2. Integrating TV-specific assets 3. Supporting non-touchscreen input 4. Adapting the UX of your app to Android TV All this should be done to an existing Android app, so you can support phones, tablets, and TVs from your same source code and APK. You can still choose to create a TV-specific APK and upload it as a new application or as an alternative APK using Play Store “multiple APKs” feature.
  • 9. 9 1. The Leanback Intent <activity android:name=".TvMainActivity“ > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> </intent-filter> </activity>
  • 10. 10 2. The Banner <activity or <application … android:banner="@drawable/ic_banner" … > • Name of your application • No transparency • Size:160x90dp -> 320x180px image to put inside drawable-xhdpi folder.
  • 11. 11 3. Supporting non-touchscreen input <uses-feature android:name="android.hardware.touchscreen" android:required="false" /> Adjust D-PAD navigation: android:focusable="true", <requestFocus /> / .requestFocus() android:nextFocusDown="@+id/whatever1" android:nextFocusUp="@id/whatever2" For custom Views: KeyEvent.KEYCODE_DPAD_(UP|DOWN|LEFT|RIGHT)
  • 12. 12 4. Adapting the UX Start from android:Theme.NoTitleBar Or Theme.Leanback from the Leanback support library: compile "com.android.support:leanback-v17:21.0.+“ Add overscan margins to your views: (Leanback Views and Fragments already have these) android:layout_marginTop="27dp" android:layout_marginLeft="48dp" android:layout_marginRight="48dp" android:layout_marginBottom="27dp" Note: Leanback support library requires API 17 but you can still support lower API levels from your app: • Use Theme.Leanback from –v21 resource folders, use Leanback classes only from your TV-part. • Set <uses-sdk tools:overrideLibrary="android.support.v17.leanback" />
  • 13. 13 Going further  Using ready-to-use elements from the Leanback Support Library  Supporting multiple controllers  Integrating the recommendation system  Integrating the search system
  • 14. Publishing apps to the Android TV Play Store
  • 15. 15 Play Store additional requirements Is your app a Game ? <android:isGame="true"> Supporting Gamepads ? <uses-feature android:name="android.hardware.gamepad“ android:required="false" /> Supporting only Android TV ? <uses-feature android:name="android.software.leanback" android:required="true" />
  • 16. 16 A classic trap: implicitly required features Having portrait activities declared inside your app ? Need to specify that your app can be used on hardware that doesn’t support “portrait” mode: <uses-feature android:name="android.hardware.screen.portrait“ android:required="false" /> Use of certain permissions also implicitly requires hardware features that aren’t available: • android.hardware.location implied by android.permission.ACCESS_FINE_LOCATION • android.hardware.camera.autofocus and android.hardware.camera implied by android.permission.CAMERA • android.hardware.microphone implied by android.permission.RECORD_AUDIO • android.hardware.telephony implied by many telephony-specific permissions
  • 17. 17 Submitting your application 1. Check you’re compliant with all the guidelines 2. Upload your APK 3. Upload your banner and a screenshot 4. Opt-in for distribution to the Play Store on Android TV
  • 18. Optimizing apps for the Nexus Player
  • 19. 19 Android* Devices with Intel Inside (Some of them – there are more than hundred, not all could be listed here) Motorola* RAZR i ZTE* Grand X IN Lava* Xolo X900 Megafon* Mint Lenovo* K800 Orange* San Diego 2012, 2013… Lenovo* K900 ASUS Fonepad™ Note FHD - 6” ZTE* Geek Samsung* Galaxy™ Tab 3 10.1” 2014… Asus* Zenfones 4/5/6 ASUS* Transformer Pad TF103CG/TF303CL Dell* Venue 8 7000 Intel® Yolo Acer* Liquid C1Etisalat E-20* ASUS* MeMO Pad FHD 10 ASUS* Fonepad™ 7” Dell* Venue 7/8 KD Interactive Kurio Tablet Toshiba Excite Go Acer* Iconia Tab 8 / One 8 Nexus PlayerLenovo* S8Asus* MemoPad 7/8 Asus* FonePad 7/8 Lenovo Yoga Tab 2 8/10/13 Tesco Hudl 2
  • 20. 20 These devices are all fully compatible with Android* ARM* ecosystem Android* SDK apps − These will directly work. We’re optimizing the Runtimes for Intel® platforms. Android* NDK apps − Most will run without any recompilation on consumer platforms. − Android NDK provides an x86 toolchain since 2011 − A simple recompile using the Android NDK yields the best performance − If there is specific processor dependent code, porting may be necessary Android Runtime Core Libraries DVM / ART
  • 21. 21 3rd party libraries/engines x86 support • Game engines/libraries with x86 support: • Havok Anarchy SDK: android x86 target available • Unreal Engine 3: android x86 target available • Marmalade: android x86 target available • NexPlayer SDK: x86 supported by default in latest releases • Cocos2Dx: set APP_ABI in Application.mk • FMOD: x86 lib already included, set ABIs in Application.mk • AppGameKit: x86 lib included, set ABIs in Application.mk • libgdx: x86 supported by default in latest releases • AppPortable: x86 support now available • Adobe Air: x86 support now available • Unity: x86 support available in 5.0 beta, soon-to-be released for earlier versions • …
  • 22. 22 Include all ABIs by setting APP_ABI to all in jni/Application.mk: APP_ABI=all The NDK will generate optimized code for all target ABIs You can also pass APP_ABI variable to ndk-build, and specify each ABI: ndk-build APP_ABI=x86 #all32 and all64 are also possible values. Configuring NDK Target ABIs Build ARM64 libs Build x86_64 libs Build mips64 libs Build ARMv7a libs Build ARMv5 libs Build x86 libs Build mips libs
  • 23. 23 “Fat” APKs By default, an APK contains libraries for every supported ABIs. Install lib/armeabi-v7a libs Install lib/x86 libs Install lib/x86_64 libraries libs/x86 libs/x86_64 APK file … Libs for the selected ABI are installed, the others remain inside the downloaded APK … … … libs/armeabi-v7a
  • 24. 24 Multiple APKs Google Play* supports multiple APKs for the same application. What compatible APK will be chosen for a device entirely depends on the android:versionCode If you have multiple APKs for multiple ABIs, best is to simply prefix your current version code with a digit representing the ABI: 2310 3310 6310 7310 You can have more options for multiple APKs, here is a convention that will work if you’re using all of these: x86ARMv7 ARM64 X86_64
  • 25. 25 Multiple APKs – clean solution with gradle splits { abi { enable true reset() include 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a' universalApk true } } // map for the version code project.ext.versionCodes = ['armeabi': 1, 'armeabi-v7a': 2, 'arm64-v8a': 3, 'mips': 5, 'mips64': 6, 'x86': 8, 'x86_64': 9] android.applicationVariants.all { variant -> // assign different version code for each output variant.outputs.each { output -> output.versionCodeOverride = project.ext.versionCodes.get(output.abiFilter, 0) * 1000000 + android.defaultConfig.versionCode } }
  • 26. 26 Uploading Multiple APKs to the store Switch to Advanced mode before uploading the second APK.
  • 27. Intel® Tools for Android* apps developers HAXM, INDE, System Studio, XDK…
  • 28. 28 Intel x86 Emulator Accelerator Intel x86 Atom System Image Faster Android* Emulation on Intel® Architecture Based Host PC • Pre-built Intel® Atom™ Processor Images available through the Android* SDK manager • Intel® Hardware Accelerated Execution Manager (Intel® HAXM) for Mac and Windows uses Intel® Virtualization Technology (Intel® VT) to accelerate Android emulator • Intel® VT is already supported in Linux* by kvm kernel driver
  • 29. 29 Intel INDE 29 Increasing productivity at every step along the development chain A productivity tool built with today’s developer in mind.  IDE support: Eclipse*, Microsoft Visual Studio*  Host support: Microsoft Windows* 7-8.1  Target support: Android 4.3 & up devices on ARM* and Intel® Architecture, Microsoft Windows* 7-8.1 devices on Intel® Architecture Environment set-up & maintenance Analyze & Debug ShipCompileCreate  Frame Debugger  System Analyzer  Platform Analyzer  Frame Analyzer  Compute Code Builder  Android Versions 4.3 & up, Intel® Architecture & ARM* devices.  Microsoft Windows* 7-8.1 Intel® Architecture devices  GNU C++ Compiler  Intel® C++ Compiler  Compute Code Builder  Media  Threading  Compute Code Builder Download: intel.com/software/inde
  • 30. 30 For on-device app testing: Intel® GPA System Analyzer Real-time Remote Performance and Power Profiling Intel® GPA System Analyzer running on a PC Android Device USB adb Connection Wi-Fi adb Connection Data Real-time charts: • CPU metrics • Graphics API level metrics • Processor graphics hardware metrics • Power metrics Download Intel® GPA for FREE at intel.com/software/GPA
  • 31. 31 Debugging OpenGL ES code with Frame Debugger Download Intel® GPA for FREE at intel.com/software/GPA
  • 32. 32 Intel® System Studio 2015 Overview 32 DEBUGGERS & TRACING ANALYZERS COMPILER & LIBRARIES JTAG Interface System & Application code running on Linux* 1, Android* or Windows* System Application Power & Performance CPU / Graphics Memory & Threading C/C++ Compiler Image, Signal, Media, Data & Math Processing Deep system-wide insight into power, performance, and reliability that helps accelerate time to market of Intel Architecture-based mobile and embedded systems and embedded applications 1 Linux*, Embedded Linux, Wind River* Linux*, Yocto Project*, Tizen*Embedded or Mobile System Learn more at: http://intel.ly/system-studio 1 Linux*, Embedded Linux, Wind River* Linux*, Yocto Project*, Tizen*
  • 33. 33 Intel® VTune™ Amplifier XE 2015 for Systems CPU Performance and Power Analysis • Identify Hotspots and inefficient code • Cache Misses, Branch Mispredictions • Drill down from Java & C/C++ to assembler code
  • 34. 34 Does the application run well on the hardware? 34
  • 35. 35 Summary • Apps submission started only on November 3rd (good opportunity to bring more visibility to your apps and games) • Adding Android TV support isn’t necessarily much work • No need for maintaining a separate APK • Better x86 apps compatibility is nice to have for your apps/libs/engines • Intel provides powerful tool suites for Android development
  • 36. Q&A