SlideShare una empresa de Scribd logo
1 de 39
Android: Arquitectura, Desarrollo, Navegandocódigo Edwin Hernandez, PhD UBIWIRELESS, LLC Taller : WebConf Latino  Julio 22, 2010
Contenido de la Presentación Introducción a la architectura de Android Formas de trabajar en Android Android SDK : Desarrollar Applicaciones Android NDK: Desarrollar librerias nativas MyDroid:  Codigo entero que corre en el emulador o en el telefono.
Android Android es un “middleware”  un software stack para sistemas móviles que incluye: Una Máquina Virtual: DALVIK-VM (Comprado por Google y Optimizado) Serie de Librerías y Recursos escritos en Java: JDK, Jars, JNI, Reflexión KERNEL: LINUX 2.6-* que se continua actualizando Cada “release” tiene nombres de postres, “cupcake”, “donut”, “eclaire”, etc
Logica para programa en Android Codigo en JAVA+C/C++ Recursos en XML Compilacion a .class Generacion .DEX con Optimizacion Archivo APK
Arquitectura simple de un Smartphone Modem GSM/3G/CDMA AP Android Runtime Linux Kernel 2.6.x Modem Link
Componentes del Middleware Application/Activity Android Service JNI  (Java) Java Native Interface Middleware/Native ServiceBSP Component
Otraspartes de Android Framework en Java con muchosobjetosyclasesparautilizar Dalvik virtual machine: Dalvik-VM  Integrated browser based on the open source WebKit engine Gráficos  con OpenGL ES SQLiteparaalmacenardatos Multimedia: audio, video, eimagenes (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) Telefonia (GSM, CDMA) GPS, Bluetooth, WiFi, ymas, derivados de Linux
Ahoravamos a Linux Linux: Uso del  “driver model,” open source, Abstraccion de Hardware (HAL), manejo de memoria, seguridad LibreriasNativas: Manejo de Superficies via OpenGL yotraslibreriasnativascomo: Packet Video, SQL Lite, WebKit. EL “Android Runtime”: Dalvik VM. DEX file support, .class files are converted are runtime ymapeadas a procesosnativos Linux
Productos a Desarrollar en Android Primero: Aplicaciones, son archivos “APK” Desarrollo via Eclipse o MOTODEV, hasta “vi”. Android SDK  (Reciente version 2.2) Segundo: Libreriasnativaspara Android, muchosparamejorarrendimientoyparafuncionalidadque no esta en el “framework” lasagregan locales (NDK) Tercero: Crear imagines, se podriahacer un acuerdo de colaboración con un proveedor de hardware ysu BSP ycreartelefonosinteligentes
Quemasnecesitamosparahacerunaaplicación? Muchacreatividad! Bajartodaslasherramients Todaslasherramientas son gratuitas!  Diseñar el flow yempezar a probarlo en el emulador
Ambiente de Desarrollo Eclipse/MotoDev Bajar el SDK dehttp://source.android.com/source/download.html Seguirinstrucciones de Google parainstalar SDK Important components ADB: Android Debug Build  DDMS: Debug Data Management System  Android script: Para crearAVDs (Android Virtual Device) Emulator: QEMU parasimular el telefono DX: Converte los .class a DEX
Eclipse
Android Script
DDMS
Emulator
ADB: Android Debug  Bridge
DroidDraw
Estructura de lasAplicaciones Android SDK Demo utilizando Eclipse yAPIDemos
Componentes de un APK Activity: Es la  “actividad.” Muchoscrean un “Application” con muchas “actividades” Intent: Mecanismoutilizadoparaactivarcomponentesycomunicarse entre actividades.  Broadcast Receiver:  Estandiseñadospararegistrarse a leer “Intents” yrecibirlos Content Providers:  Proveendatos a todo el sistema, acceso a Contactos, Listado de Mensajes, DRM Services:  No tienen UI, ypor lo general correr en el “background”
Estados de unaAplicacion en Android
Service
Activity Unidad Principal. Unaactividades lo que se ejecutayesmanejadopor el Dalvik-VM en un “life-cycle”.  Unaaplicacionpuedetenervariasactividadesentrelazadas, perosolamenteunaes la que se lanza del icono principal El UI se define via el archivo “Manifest,” DroidDrawo un XML Editor El Archivo Manifest, contieneimportantesdefinicionespara la “Actividad,” UI, filtros de intents, otrasactividades, permisos de acceso.
Service Un servicio, probablemente no tiene UI GeneralmenteutlizaNoticacionesy el Toolbar parapresentaractualizaciones Generalmente se comienay se manaja en el background Tratar de utilizar la claseAsyncTaskparacorrerprocesos en el “background”
Intent Mecanismo de comunicación entre actividades (Activities) Puede ser implicito, oexplicito Se puedehacer un Broadcast Intent, o se puedeseleccionar la claseque se quierelanzar. Se puedendefinirnuevos intents, INTENT_WEBCONF si se desa via archivo manifest
Broadcast Receiver Se implementapararecibir un Intent, ya sea queeste en el sistema: e.g. ACTION_CALL ocualquier intent creadoporunaactividad El BroadCastRecieveresutilapramanejareventos Chequear los “Permissions” siempre, no todos los Intents puedenrecibirseporunaclases de estetipo
Content Provider  Es simplementeunaabstraccionparaaccesarunaclase de datos, de unaovariastablas en SQLITE o en un archivo El ContentProviderimplementa el acceso a la clase, se puedeutlizar de variasactividadesy no se necesitanhaceruso de comandostipo SELECT como en SQLITE Muchos “Developers” no los utilizan
SeguridadyPermisos Cadaaplicacioncreada en /data/ tiene un UID unico Cadaaplicacioncreada en /system es de otro UID ygeneralmente no se puedeborrar del sistema La seguridad de aplicacionespuederequerirfirmar el APK con unamismallaveparaverificar sea valido A suvez, Certificadosasociados con el “System” previeneningreso no autoizado En un “rooted” phone estospermisos son validosperopueden ser reemplazados.
Muchosotrosservicios en Android Location: GPS a travez de LocationProviders Multimedia  Mensajeria de Textoy Multimedia Busqueda Muchosmaslocalizados en: http://developer.android.com/resources/index.html
VeamosEjemplo de “APIDemo” Views App OS WebViews ListActivity
Codigo de Android  Goldfish: ArquitecturaProveida en Android 2.2
MyDroid : Open Source Podemosrevisartodo el codigo de los “Repos” de Google, incluyendocodigo de HTC, yotros “Vendors” Quepodemosencontrar: Un Browser: Browser App Un Provider: Digital Rights Management  Integracion con el Kernel: BSP es Goldfish Architecture. Muchamemoria, 8GB mínimo. Seguirinstruccione en: http://source.android.com/source/git-repo.html
“Browser Activity”
Codigo Nativo (NDK) Resumen de funcionamiento : JNI – Java Native Interface
NDK Se puedencrearlibrerias de extension .so en C/C++ Ejemplos de combinacionNativo + Java Bluetooth RIL : Radio Interface Layer  Camera App DRM: Digital Rights Management Now your own applications!
NDK
NDK Codigo en C
Futuro de  Desarrollo de Apps App Inventor : Enlistarsepararevisar BETA
MOTODEV DEMO Motorola

Más contenido relacionado

La actualidad más candente

Fundamentos desarrollo de Apps para Android
Fundamentos desarrollo de Apps para AndroidFundamentos desarrollo de Apps para Android
Fundamentos desarrollo de Apps para Androidandresuarezz26
 
Curso de desarrollo de aplicaciones Android - Sesión 1
Curso de desarrollo de aplicaciones Android - Sesión 1Curso de desarrollo de aplicaciones Android - Sesión 1
Curso de desarrollo de aplicaciones Android - Sesión 1Daniel Alvarez
 
Desarrollo android - 3 - entorno de desarrollo
Desarrollo android  - 3 - entorno de desarrolloDesarrollo android  - 3 - entorno de desarrollo
Desarrollo android - 3 - entorno de desarrolloEmilio Aviles Avila
 
Java eclipse-y-android-studio
Java eclipse-y-android-studioJava eclipse-y-android-studio
Java eclipse-y-android-studioDies Irae
 
"Android de la A a la Z" -- Unidad 1
"Android de la A a la Z" -- Unidad 1"Android de la A a la Z" -- Unidad 1
"Android de la A a la Z" -- Unidad 1Android UNAM
 
Componentes necesarios de android docx
Componentes necesarios de android  docxComponentes necesarios de android  docx
Componentes necesarios de android docxgrachika
 
Tutorial Android 1
Tutorial Android 1Tutorial Android 1
Tutorial Android 1newimagenio
 
"Android de la A a la Z" -- Unidad 4
"Android de la A a la Z" -- Unidad 4"Android de la A a la Z" -- Unidad 4
"Android de la A a la Z" -- Unidad 4Android UNAM
 
Fundamentos del Desarrollo de Aplicaciones para Android
Fundamentos del Desarrollo de Aplicaciones para AndroidFundamentos del Desarrollo de Aplicaciones para Android
Fundamentos del Desarrollo de Aplicaciones para AndroidSantiago Márquez Solís
 

La actualidad más candente (20)

Fundamentos desarrollo de Apps para Android
Fundamentos desarrollo de Apps para AndroidFundamentos desarrollo de Apps para Android
Fundamentos desarrollo de Apps para Android
 
Curso de desarrollo de aplicaciones Android - Sesión 1
Curso de desarrollo de aplicaciones Android - Sesión 1Curso de desarrollo de aplicaciones Android - Sesión 1
Curso de desarrollo de aplicaciones Android - Sesión 1
 
Android p
Android pAndroid p
Android p
 
Android
AndroidAndroid
Android
 
Desarrollo android - 3 - entorno de desarrollo
Desarrollo android  - 3 - entorno de desarrolloDesarrollo android  - 3 - entorno de desarrollo
Desarrollo android - 3 - entorno de desarrollo
 
Tema: Android Studio
Tema: Android StudioTema: Android Studio
Tema: Android Studio
 
Java eclipse-y-android-studio
Java eclipse-y-android-studioJava eclipse-y-android-studio
Java eclipse-y-android-studio
 
Winulator grupo6
Winulator grupo6Winulator grupo6
Winulator grupo6
 
Netbeans Ide ENFEES
Netbeans Ide ENFEESNetbeans Ide ENFEES
Netbeans Ide ENFEES
 
Android Studio
Android StudioAndroid Studio
Android Studio
 
"Android de la A a la Z" -- Unidad 1
"Android de la A a la Z" -- Unidad 1"Android de la A a la Z" -- Unidad 1
"Android de la A a la Z" -- Unidad 1
 
Componentes necesarios de android docx
Componentes necesarios de android  docxComponentes necesarios de android  docx
Componentes necesarios de android docx
 
Entornos-de-Desarrollo-Eclipse-y-Android-SDK
Entornos-de-Desarrollo-Eclipse-y-Android-SDKEntornos-de-Desarrollo-Eclipse-y-Android-SDK
Entornos-de-Desarrollo-Eclipse-y-Android-SDK
 
Tutorial Android 1
Tutorial Android 1Tutorial Android 1
Tutorial Android 1
 
Android studio
Android studioAndroid studio
Android studio
 
Android Pres3
Android Pres3Android Pres3
Android Pres3
 
"Android de la A a la Z" -- Unidad 4
"Android de la A a la Z" -- Unidad 4"Android de la A a la Z" -- Unidad 4
"Android de la A a la Z" -- Unidad 4
 
Android
AndroidAndroid
Android
 
Fundamentos del Desarrollo de Aplicaciones para Android
Fundamentos del Desarrollo de Aplicaciones para AndroidFundamentos del Desarrollo de Aplicaciones para Android
Fundamentos del Desarrollo de Aplicaciones para Android
 
Android Studio
Android StudioAndroid Studio
Android Studio
 

Destacado

Cloud to Cable TV - Music Platform
 Cloud to Cable TV - Music Platform Cloud to Cable TV - Music Platform
Cloud to Cable TV - Music PlatformDr. Edwin Hernandez
 
Ray Tracing Software and Emulation
Ray Tracing Software and EmulationRay Tracing Software and Emulation
Ray Tracing Software and EmulationDr. Edwin Hernandez
 
Mediamplify® y MEVIA White Paper - Español
Mediamplify® y MEVIA White Paper - EspañolMediamplify® y MEVIA White Paper - Español
Mediamplify® y MEVIA White Paper - EspañolDr. Edwin Hernandez
 
Mediamplify® and MEVIA White Paper
Mediamplify® and MEVIA White PaperMediamplify® and MEVIA White Paper
Mediamplify® and MEVIA White PaperDr. Edwin Hernandez
 
Cadbury's Dairy Milk Chocolate
Cadbury's Dairy Milk ChocolateCadbury's Dairy Milk Chocolate
Cadbury's Dairy Milk ChocolateRay M
 

Destacado (8)

EGLACOMM / MEVIA APP TEASER
EGLACOMM / MEVIA APP TEASEREGLACOMM / MEVIA APP TEASER
EGLACOMM / MEVIA APP TEASER
 
MEVIA en Español
MEVIA en EspañolMEVIA en Español
MEVIA en Español
 
Cloud to Cable Video Platform
Cloud to Cable Video PlatformCloud to Cable Video Platform
Cloud to Cable Video Platform
 
Cloud to Cable TV - Music Platform
 Cloud to Cable TV - Music Platform Cloud to Cable TV - Music Platform
Cloud to Cable TV - Music Platform
 
Ray Tracing Software and Emulation
Ray Tracing Software and EmulationRay Tracing Software and Emulation
Ray Tracing Software and Emulation
 
Mediamplify® y MEVIA White Paper - Español
Mediamplify® y MEVIA White Paper - EspañolMediamplify® y MEVIA White Paper - Español
Mediamplify® y MEVIA White Paper - Español
 
Mediamplify® and MEVIA White Paper
Mediamplify® and MEVIA White PaperMediamplify® and MEVIA White Paper
Mediamplify® and MEVIA White Paper
 
Cadbury's Dairy Milk Chocolate
Cadbury's Dairy Milk ChocolateCadbury's Dairy Milk Chocolate
Cadbury's Dairy Milk Chocolate
 

Similar a Taller deandroid

Deletreando Android
Deletreando AndroidDeletreando Android
Deletreando Androidjezabelink
 
Introducción al desarrollo de aplicaciones para Android
Introducción al desarrollo de aplicaciones para AndroidIntroducción al desarrollo de aplicaciones para Android
Introducción al desarrollo de aplicaciones para AndroidArmando Picón Z.
 
Presentacion android mistela&tweets
Presentacion android mistela&tweetsPresentacion android mistela&tweets
Presentacion android mistela&tweetsJorge Soro
 
Introducción a la programación androide
Introducción a la programación androideIntroducción a la programación androide
Introducción a la programación androideJomicast
 
Android de la A a la Z - Unidad 1
Android de la A a la Z - Unidad 1Android de la A a la Z - Unidad 1
Android de la A a la Z - Unidad 1Jorge Ulises
 
Curso Iniciacion android
Curso Iniciacion androidCurso Iniciacion android
Curso Iniciacion androidZix Stdio
 
Tópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movilTópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movilJosé Antonio Sandoval Acosta
 
FONTIC: Introducción al desarrollo en Android
FONTIC: Introducción al desarrollo en AndroidFONTIC: Introducción al desarrollo en Android
FONTIC: Introducción al desarrollo en AndroidRomán Hernández
 
Android reversing 101.pdf
Android reversing 101.pdfAndroid reversing 101.pdf
Android reversing 101.pdfJosé Moreno
 
Seminario Android (Parte 1) - movilforum
Seminario Android (Parte 1) - movilforumSeminario Android (Parte 1) - movilforum
Seminario Android (Parte 1) - movilforumvideos
 
Componentes para programar en android
Componentes para programar en androidComponentes para programar en android
Componentes para programar en androidJessarin Kitty Cosmic
 
Preparación del entorno de desarrollo de android
Preparación del entorno de desarrollo de androidPreparación del entorno de desarrollo de android
Preparación del entorno de desarrollo de androidNelson Samir Ríos Ramos
 
Introducción a Android: 10 cosas importantes que hay que entender
Introducción a Android: 10 cosas importantes que hay que entenderIntroducción a Android: 10 cosas importantes que hay que entender
Introducción a Android: 10 cosas importantes que hay que entenderjezabelink
 
Sistema Operativo Android
Sistema Operativo AndroidSistema Operativo Android
Sistema Operativo AndroidAlfredo Aguayo
 

Similar a Taller deandroid (20)

Deletreando Android
Deletreando AndroidDeletreando Android
Deletreando Android
 
App inventor
App inventorApp inventor
App inventor
 
Introducción al desarrollo de aplicaciones para Android
Introducción al desarrollo de aplicaciones para AndroidIntroducción al desarrollo de aplicaciones para Android
Introducción al desarrollo de aplicaciones para Android
 
Presentacion android mistela&tweets
Presentacion android mistela&tweetsPresentacion android mistela&tweets
Presentacion android mistela&tweets
 
Introducción a la programación androide
Introducción a la programación androideIntroducción a la programación androide
Introducción a la programación androide
 
Android de la A a la Z - Unidad 1
Android de la A a la Z - Unidad 1Android de la A a la Z - Unidad 1
Android de la A a la Z - Unidad 1
 
Curso Iniciacion android
Curso Iniciacion androidCurso Iniciacion android
Curso Iniciacion android
 
Documento de android
Documento de androidDocumento de android
Documento de android
 
Tópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movilTópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movil
 
FONTIC: Introducción al desarrollo en Android
FONTIC: Introducción al desarrollo en AndroidFONTIC: Introducción al desarrollo en Android
FONTIC: Introducción al desarrollo en Android
 
Android
AndroidAndroid
Android
 
Android
AndroidAndroid
Android
 
Curso Desarrollo Android
Curso Desarrollo AndroidCurso Desarrollo Android
Curso Desarrollo Android
 
Android reversing 101.pdf
Android reversing 101.pdfAndroid reversing 101.pdf
Android reversing 101.pdf
 
Seminario Android (Parte 1) - movilforum
Seminario Android (Parte 1) - movilforumSeminario Android (Parte 1) - movilforum
Seminario Android (Parte 1) - movilforum
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 
Componentes para programar en android
Componentes para programar en androidComponentes para programar en android
Componentes para programar en android
 
Preparación del entorno de desarrollo de android
Preparación del entorno de desarrollo de androidPreparación del entorno de desarrollo de android
Preparación del entorno de desarrollo de android
 
Introducción a Android: 10 cosas importantes que hay que entender
Introducción a Android: 10 cosas importantes que hay que entenderIntroducción a Android: 10 cosas importantes que hay que entender
Introducción a Android: 10 cosas importantes que hay que entender
 
Sistema Operativo Android
Sistema Operativo AndroidSistema Operativo Android
Sistema Operativo Android
 

Más de Dr. Edwin Hernandez

MEVIA Platform for Music and Video
MEVIA Platform for Music and VideoMEVIA Platform for Music and Video
MEVIA Platform for Music and VideoDr. Edwin Hernandez
 
Proposal NFT Metaverse Projects.pdf
Proposal NFT Metaverse Projects.pdfProposal NFT Metaverse Projects.pdf
Proposal NFT Metaverse Projects.pdfDr. Edwin Hernandez
 
Next Generation Spaces for Startups
Next Generation Spaces for Startups Next Generation Spaces for Startups
Next Generation Spaces for Startups Dr. Edwin Hernandez
 
Analisis del Fraude Electoral en el 2017 - EGLA CORP
Analisis del Fraude Electoral en el 2017 - EGLA CORPAnalisis del Fraude Electoral en el 2017 - EGLA CORP
Analisis del Fraude Electoral en el 2017 - EGLA CORPDr. Edwin Hernandez
 
EGLAVATOR - Innovation, intellectual property services, and capital 2022 - 1
EGLAVATOR - Innovation, intellectual property services, and capital 2022 - 1EGLAVATOR - Innovation, intellectual property services, and capital 2022 - 1
EGLAVATOR - Innovation, intellectual property services, and capital 2022 - 1Dr. Edwin Hernandez
 
MEVIA and Cloud to Cable TV Intellectual Property
MEVIA and Cloud to Cable TV Intellectual PropertyMEVIA and Cloud to Cable TV Intellectual Property
MEVIA and Cloud to Cable TV Intellectual PropertyDr. Edwin Hernandez
 
Tips para mejorar ventas digitales
Tips para mejorar ventas digitalesTips para mejorar ventas digitales
Tips para mejorar ventas digitalesDr. Edwin Hernandez
 
Securing 4G and LTE systems with Deep Learning and Virtualization
Securing 4G and LTE systems with Deep Learning and VirtualizationSecuring 4G and LTE systems with Deep Learning and Virtualization
Securing 4G and LTE systems with Deep Learning and VirtualizationDr. Edwin Hernandez
 
MEVIA - Technology Updates - 2020
MEVIA - Technology Updates -  2020MEVIA - Technology Updates -  2020
MEVIA - Technology Updates - 2020Dr. Edwin Hernandez
 
MEVIA - Entertaiment and Cloud-based Solution for Yachts
MEVIA - Entertaiment and Cloud-based Solution for Yachts MEVIA - Entertaiment and Cloud-based Solution for Yachts
MEVIA - Entertaiment and Cloud-based Solution for Yachts Dr. Edwin Hernandez
 
NextGENTV broadcasting with Cloud to Cable (ATSC 3.0) - Broadcasting to CABSAT
NextGENTV broadcasting with Cloud to Cable  (ATSC 3.0) - Broadcasting to CABSATNextGENTV broadcasting with Cloud to Cable  (ATSC 3.0) - Broadcasting to CABSAT
NextGENTV broadcasting with Cloud to Cable (ATSC 3.0) - Broadcasting to CABSATDr. Edwin Hernandez
 
New Revenue Opportunities for Cloud Apps and Services with CloudtoCable
New Revenue Opportunities for Cloud Apps and Services with CloudtoCableNew Revenue Opportunities for Cloud Apps and Services with CloudtoCable
New Revenue Opportunities for Cloud Apps and Services with CloudtoCableDr. Edwin Hernandez
 
EGLA CORP: Innovation, Intellectual Property Services, and Capital
EGLA CORP:  Innovation, Intellectual Property Services, and CapitalEGLA CORP:  Innovation, Intellectual Property Services, and Capital
EGLA CORP: Innovation, Intellectual Property Services, and CapitalDr. Edwin Hernandez
 
Music for Cable Music Service for Operators
Music for Cable   Music Service for OperatorsMusic for Cable   Music Service for Operators
Music for Cable Music Service for OperatorsDr. Edwin Hernandez
 
Cloud to Cable intellectual Property Portfolio
Cloud to Cable intellectual Property PortfolioCloud to Cable intellectual Property Portfolio
Cloud to Cable intellectual Property PortfolioDr. Edwin Hernandez
 
Music for Cable TV - Channel Lineup
Music for Cable TV - Channel LineupMusic for Cable TV - Channel Lineup
Music for Cable TV - Channel LineupDr. Edwin Hernandez
 

Más de Dr. Edwin Hernandez (20)

MEVIA Platform for Music and Video
MEVIA Platform for Music and VideoMEVIA Platform for Music and Video
MEVIA Platform for Music and Video
 
Proposal NFT Metaverse Projects.pdf
Proposal NFT Metaverse Projects.pdfProposal NFT Metaverse Projects.pdf
Proposal NFT Metaverse Projects.pdf
 
Emulation MobileCAD
Emulation MobileCADEmulation MobileCAD
Emulation MobileCAD
 
EGLA NFT Offering
EGLA NFT OfferingEGLA NFT Offering
EGLA NFT Offering
 
Next Generation Spaces for Startups
Next Generation Spaces for Startups Next Generation Spaces for Startups
Next Generation Spaces for Startups
 
Analisis del Fraude Electoral en el 2017 - EGLA CORP
Analisis del Fraude Electoral en el 2017 - EGLA CORPAnalisis del Fraude Electoral en el 2017 - EGLA CORP
Analisis del Fraude Electoral en el 2017 - EGLA CORP
 
EGLAVATOR - Innovation, intellectual property services, and capital 2022 - 1
EGLAVATOR - Innovation, intellectual property services, and capital 2022 - 1EGLAVATOR - Innovation, intellectual property services, and capital 2022 - 1
EGLAVATOR - Innovation, intellectual property services, and capital 2022 - 1
 
MEVIA and Cloud to Cable TV Intellectual Property
MEVIA and Cloud to Cable TV Intellectual PropertyMEVIA and Cloud to Cable TV Intellectual Property
MEVIA and Cloud to Cable TV Intellectual Property
 
EGLAVATOR - Who are we?
EGLAVATOR - Who are we?EGLAVATOR - Who are we?
EGLAVATOR - Who are we?
 
Tips para mejorar ventas digitales
Tips para mejorar ventas digitalesTips para mejorar ventas digitales
Tips para mejorar ventas digitales
 
Securing 4G and LTE systems with Deep Learning and Virtualization
Securing 4G and LTE systems with Deep Learning and VirtualizationSecuring 4G and LTE systems with Deep Learning and Virtualization
Securing 4G and LTE systems with Deep Learning and Virtualization
 
EGLAVATOR by EGLA CORP
EGLAVATOR by EGLA CORPEGLAVATOR by EGLA CORP
EGLAVATOR by EGLA CORP
 
MEVIA - Technology Updates - 2020
MEVIA - Technology Updates -  2020MEVIA - Technology Updates -  2020
MEVIA - Technology Updates - 2020
 
MEVIA - Entertaiment and Cloud-based Solution for Yachts
MEVIA - Entertaiment and Cloud-based Solution for Yachts MEVIA - Entertaiment and Cloud-based Solution for Yachts
MEVIA - Entertaiment and Cloud-based Solution for Yachts
 
NextGENTV broadcasting with Cloud to Cable (ATSC 3.0) - Broadcasting to CABSAT
NextGENTV broadcasting with Cloud to Cable  (ATSC 3.0) - Broadcasting to CABSATNextGENTV broadcasting with Cloud to Cable  (ATSC 3.0) - Broadcasting to CABSAT
NextGENTV broadcasting with Cloud to Cable (ATSC 3.0) - Broadcasting to CABSAT
 
New Revenue Opportunities for Cloud Apps and Services with CloudtoCable
New Revenue Opportunities for Cloud Apps and Services with CloudtoCableNew Revenue Opportunities for Cloud Apps and Services with CloudtoCable
New Revenue Opportunities for Cloud Apps and Services with CloudtoCable
 
EGLA CORP: Innovation, Intellectual Property Services, and Capital
EGLA CORP:  Innovation, Intellectual Property Services, and CapitalEGLA CORP:  Innovation, Intellectual Property Services, and Capital
EGLA CORP: Innovation, Intellectual Property Services, and Capital
 
Music for Cable Music Service for Operators
Music for Cable   Music Service for OperatorsMusic for Cable   Music Service for Operators
Music for Cable Music Service for Operators
 
Cloud to Cable intellectual Property Portfolio
Cloud to Cable intellectual Property PortfolioCloud to Cable intellectual Property Portfolio
Cloud to Cable intellectual Property Portfolio
 
Music for Cable TV - Channel Lineup
Music for Cable TV - Channel LineupMusic for Cable TV - Channel Lineup
Music for Cable TV - Channel Lineup
 

Último

TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramDIDIERFERNANDOGUERRE
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 

Último (20)

TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ram
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 

Taller deandroid

  • 1. Android: Arquitectura, Desarrollo, Navegandocódigo Edwin Hernandez, PhD UBIWIRELESS, LLC Taller : WebConf Latino Julio 22, 2010
  • 2. Contenido de la Presentación Introducción a la architectura de Android Formas de trabajar en Android Android SDK : Desarrollar Applicaciones Android NDK: Desarrollar librerias nativas MyDroid: Codigo entero que corre en el emulador o en el telefono.
  • 3. Android Android es un “middleware” un software stack para sistemas móviles que incluye: Una Máquina Virtual: DALVIK-VM (Comprado por Google y Optimizado) Serie de Librerías y Recursos escritos en Java: JDK, Jars, JNI, Reflexión KERNEL: LINUX 2.6-* que se continua actualizando Cada “release” tiene nombres de postres, “cupcake”, “donut”, “eclaire”, etc
  • 4. Logica para programa en Android Codigo en JAVA+C/C++ Recursos en XML Compilacion a .class Generacion .DEX con Optimizacion Archivo APK
  • 5.
  • 6. Arquitectura simple de un Smartphone Modem GSM/3G/CDMA AP Android Runtime Linux Kernel 2.6.x Modem Link
  • 7. Componentes del Middleware Application/Activity Android Service JNI (Java) Java Native Interface Middleware/Native ServiceBSP Component
  • 8. Otraspartes de Android Framework en Java con muchosobjetosyclasesparautilizar Dalvik virtual machine: Dalvik-VM Integrated browser based on the open source WebKit engine Gráficos con OpenGL ES SQLiteparaalmacenardatos Multimedia: audio, video, eimagenes (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) Telefonia (GSM, CDMA) GPS, Bluetooth, WiFi, ymas, derivados de Linux
  • 9. Ahoravamos a Linux Linux: Uso del “driver model,” open source, Abstraccion de Hardware (HAL), manejo de memoria, seguridad LibreriasNativas: Manejo de Superficies via OpenGL yotraslibreriasnativascomo: Packet Video, SQL Lite, WebKit. EL “Android Runtime”: Dalvik VM. DEX file support, .class files are converted are runtime ymapeadas a procesosnativos Linux
  • 10. Productos a Desarrollar en Android Primero: Aplicaciones, son archivos “APK” Desarrollo via Eclipse o MOTODEV, hasta “vi”. Android SDK (Reciente version 2.2) Segundo: Libreriasnativaspara Android, muchosparamejorarrendimientoyparafuncionalidadque no esta en el “framework” lasagregan locales (NDK) Tercero: Crear imagines, se podriahacer un acuerdo de colaboración con un proveedor de hardware ysu BSP ycreartelefonosinteligentes
  • 11. Quemasnecesitamosparahacerunaaplicación? Muchacreatividad! Bajartodaslasherramients Todaslasherramientas son gratuitas! Diseñar el flow yempezar a probarlo en el emulador
  • 12. Ambiente de Desarrollo Eclipse/MotoDev Bajar el SDK dehttp://source.android.com/source/download.html Seguirinstrucciones de Google parainstalar SDK Important components ADB: Android Debug Build DDMS: Debug Data Management System Android script: Para crearAVDs (Android Virtual Device) Emulator: QEMU parasimular el telefono DX: Converte los .class a DEX
  • 15. DDMS
  • 19. Estructura de lasAplicaciones Android SDK Demo utilizando Eclipse yAPIDemos
  • 20. Componentes de un APK Activity: Es la “actividad.” Muchoscrean un “Application” con muchas “actividades” Intent: Mecanismoutilizadoparaactivarcomponentesycomunicarse entre actividades. Broadcast Receiver: Estandiseñadospararegistrarse a leer “Intents” yrecibirlos Content Providers: Proveendatos a todo el sistema, acceso a Contactos, Listado de Mensajes, DRM Services: No tienen UI, ypor lo general correr en el “background”
  • 23. Activity Unidad Principal. Unaactividades lo que se ejecutayesmanejadopor el Dalvik-VM en un “life-cycle”. Unaaplicacionpuedetenervariasactividadesentrelazadas, perosolamenteunaes la que se lanza del icono principal El UI se define via el archivo “Manifest,” DroidDrawo un XML Editor El Archivo Manifest, contieneimportantesdefinicionespara la “Actividad,” UI, filtros de intents, otrasactividades, permisos de acceso.
  • 24. Service Un servicio, probablemente no tiene UI GeneralmenteutlizaNoticacionesy el Toolbar parapresentaractualizaciones Generalmente se comienay se manaja en el background Tratar de utilizar la claseAsyncTaskparacorrerprocesos en el “background”
  • 25. Intent Mecanismo de comunicación entre actividades (Activities) Puede ser implicito, oexplicito Se puedehacer un Broadcast Intent, o se puedeseleccionar la claseque se quierelanzar. Se puedendefinirnuevos intents, INTENT_WEBCONF si se desa via archivo manifest
  • 26. Broadcast Receiver Se implementapararecibir un Intent, ya sea queeste en el sistema: e.g. ACTION_CALL ocualquier intent creadoporunaactividad El BroadCastRecieveresutilapramanejareventos Chequear los “Permissions” siempre, no todos los Intents puedenrecibirseporunaclases de estetipo
  • 27. Content Provider Es simplementeunaabstraccionparaaccesarunaclase de datos, de unaovariastablas en SQLITE o en un archivo El ContentProviderimplementa el acceso a la clase, se puedeutlizar de variasactividadesy no se necesitanhaceruso de comandostipo SELECT como en SQLITE Muchos “Developers” no los utilizan
  • 28. SeguridadyPermisos Cadaaplicacioncreada en /data/ tiene un UID unico Cadaaplicacioncreada en /system es de otro UID ygeneralmente no se puedeborrar del sistema La seguridad de aplicacionespuederequerirfirmar el APK con unamismallaveparaverificar sea valido A suvez, Certificadosasociados con el “System” previeneningreso no autoizado En un “rooted” phone estospermisos son validosperopueden ser reemplazados.
  • 29. Muchosotrosservicios en Android Location: GPS a travez de LocationProviders Multimedia Mensajeria de Textoy Multimedia Busqueda Muchosmaslocalizados en: http://developer.android.com/resources/index.html
  • 30. VeamosEjemplo de “APIDemo” Views App OS WebViews ListActivity
  • 31. Codigo de Android Goldfish: ArquitecturaProveida en Android 2.2
  • 32. MyDroid : Open Source Podemosrevisartodo el codigo de los “Repos” de Google, incluyendocodigo de HTC, yotros “Vendors” Quepodemosencontrar: Un Browser: Browser App Un Provider: Digital Rights Management Integracion con el Kernel: BSP es Goldfish Architecture. Muchamemoria, 8GB mínimo. Seguirinstruccione en: http://source.android.com/source/git-repo.html
  • 34. Codigo Nativo (NDK) Resumen de funcionamiento : JNI – Java Native Interface
  • 35. NDK Se puedencrearlibrerias de extension .so en C/C++ Ejemplos de combinacionNativo + Java Bluetooth RIL : Radio Interface Layer Camera App DRM: Digital Rights Management Now your own applications!
  • 36. NDK
  • 38. Futuro de Desarrollo de Apps App Inventor : Enlistarsepararevisar BETA