SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
Android:
desarrollo de aplicaciones
 Raúl Jiménez Ortega
 Nicolás Fernández Valverde
 José Luis López Pino
Diseño de la interfaz de usuario
Existen dos formas de implementar la interfaz:
 Procedural: como tradicionalmente se han
implementado las interfaces en Java → estilo
AWT, SWING, etc.
 Declarativa: usando el lenguaje de marcas
XML.
Ejemplo - Declarativo
¡Hola Mundo!
Servicios basados en localización
 Localización: ofrece la clase LocationManager
para acceder a los sistemas de localización.
 Acelerómetro y brújula: se gestiona con el
SensorManager y requiere el uso de listeners.
Para la carga se usa la función:
getSystemService(nombre_del_servicio)
Tres sistemas intregados:
Cámara - Configuración
 Podemos manipular la configuración:
 Frecuencia de previsualización:
(setPreviewFrameRate)
 Tamaño: (setPictureSize)
 Codificación de la imagen: (setPictureFormat)
 Etc.
Camera.Parameters parameters = camera.getParameters();
parameters.setPictureFormat(PixelFormat.JPEG);
camera.setParameters(parameters);
Ejemplo:
Cámara - Captura
private void takePicture() {
camera.takePicture(shutterCallback, rawCallback, jpegCallback);
}
 shutterCallBack: se lanza justo cuando se cierra el
disparador de la cámara.
 rawCallBack: recibe la imagen sin codificar tras haber
sido tomada.
 jpegCallBack: recibe la imagen en formato JPEG.
Servicios Android
 Se ejecutan en segundo plano.
 El usuario no interactúa con los servicios, sino
que son manejados por las aplicaciones.
 Realizan tareas como actualizar Content-
Providers o manejar notificaciones.
 Por ejemplo se programan como servicio las
actualizaciones automáticas para los
programas.
Gestión de un servicio.
 Creación: Sobrecargamos los siguientes
métodos de la clase services:
 OnCreate : Acciones cuando se crea el servicio.
 OnBind : Acciones para ligarlo a una aplicación.
 OnStart : Acciones cuando se inicia el servicio.
 Lanzar el servicio. Dos formas
 Explícita: startService(new Intent(MyService.MY_ACTION));
 Implícita:startService(new Intent(this,MyService.class));
 Pararlo : stopService(new Intent(this, service.getClass()));
Hebras
 Todos los componentes de la aplicación
(incluidos los servicios) corren sobre la hebra
principal.
 Para evitar que la aplicación se bloquee las
operaciones más costosas en tiempo se
realizan en hebras de segundo plano.
 Se programan en hebras tareas como el
manejo de ficheros, transacciones en bases de
datos o búsquedas de redes.
Reproducción Multimedia
 Creamos una instancia de la clase MediaPlayer
por cada archivo.
 MediaPlayer implementa funciones:
 De reproducción: start, stop, pause, seek...
 Recuperación de información: nombre, tamaño,
tipo...
 Límite de instancias de la clase → tenemos
que liberar recursos.
Grabación Multimedia
 Creamos una instancia de MediaRecorder con
las opciones pertinentes:
 Establecemos la fuente con setAudioSource o con
setVideoSource.
 Definir el formato de salida con setOutputFormat.
 Seleccionar el codificador a utilizar.
 Y el fichero de salida.
 Con start, stop y release manejamos la
grabación.
El gestor de notificaciones
 Mensaje en la barra de estados.
 Icono en la barrra de estados
 Iluminar LEDs.
 Vibración.
 Sonidos.
Native Android Content Providers
Integración entre aplicaciones
Content Provider Datos que ofrece
Browser Historial, marcadores y otra información del navegador.
CallLog Detalles sobre llamadas (perdidas, duración, etc.)
Contacts Datos sobre los contactos de tu agenda
MediaStore Ficheros multimedia como audio, vídeo e imágenes.
Settings Configuración del dispositivo.
Hacer nuevos Content Providers
 Utilizar un sistema de almacenamiento de
datos (usualmente en ficheros o usando
SQLite).
 Crear una clase que herede de
ContentProvider.
 Definiendo una serie de métodos: getType,
onCreate, query, insert, delete y update.
 Declarar el proveedor de contenido en el
fichero AndroidManifest.xml de nuestra
aplicación.
Opciones generales de conexión
 Establecer red preferida.
 Activar o desactivar un tipo de red.
 ¿Falló la conexión a la red preferida?
 ¿Hay conexión?
 ¿Por qué falló la conexión?
Opciones específicas de WiFi
 ¿Está el dispositivo habilitado?
 Habilitar el dispositivo.
 Obtener lista de redes configuradas.
 Conectar a una red.
 Obtener información de la conexión.
 Escanear todos los puntos de acceso.
 Consultar el resultado del escaneo.
Conclusiones
 Está diseñado para facilitar el desarrollo a terceros.
 Nos ofrece bibliotecas para trabajar con dispositivos que
tradicionalmente no se incluían en equipos móviles.
 Facilita la integración entre aplicaciones.
 Ofrece un alto nivel de abstracción frente al hardware
nunca visto antes.
 Al estar basado en Linux ofrece un soporte robusto y
fiable.
 Que esté mantenido por la Open Handset Alliance ofrece
garantías de perdurabilidad en el tiempo.

Más contenido relacionado

La actualidad más candente

Windows server 2008, Servidor, Dominio
Windows server 2008, Servidor, DominioWindows server 2008, Servidor, Dominio
Windows server 2008, Servidor, DominioOmar Alejo
 
Unidad 7: Administración de objetos de Active Directory.
Unidad 7: Administración de objetos de Active Directory.Unidad 7: Administración de objetos de Active Directory.
Unidad 7: Administración de objetos de Active Directory.carmenrico14
 
Autenticacion proxy fiter mediante grupo de ldap
Autenticacion proxy fiter mediante grupo de ldapAutenticacion proxy fiter mediante grupo de ldap
Autenticacion proxy fiter mediante grupo de ldapMauricio Arcas H.
 
Autenticación de usuarios proxy pfsense 2.1
Autenticación de usuarios proxy pfsense 2.1Autenticación de usuarios proxy pfsense 2.1
Autenticación de usuarios proxy pfsense 2.1Mauricio Arcas H.
 
Diferencias entre windows server 2003 y 2008
Diferencias entre windows server 2003 y 2008Diferencias entre windows server 2003 y 2008
Diferencias entre windows server 2003 y 2008Dante Rodriguez
 

La actualidad más candente (8)

Windows server 2008, Servidor, Dominio
Windows server 2008, Servidor, DominioWindows server 2008, Servidor, Dominio
Windows server 2008, Servidor, Dominio
 
Unidad 7: Administración de objetos de Active Directory.
Unidad 7: Administración de objetos de Active Directory.Unidad 7: Administración de objetos de Active Directory.
Unidad 7: Administración de objetos de Active Directory.
 
Autenticacion proxy fiter mediante grupo de ldap
Autenticacion proxy fiter mediante grupo de ldapAutenticacion proxy fiter mediante grupo de ldap
Autenticacion proxy fiter mediante grupo de ldap
 
Autenticación de usuarios proxy pfsense 2.1
Autenticación de usuarios proxy pfsense 2.1Autenticación de usuarios proxy pfsense 2.1
Autenticación de usuarios proxy pfsense 2.1
 
Diferencias entre windows server 2003 y 2008
Diferencias entre windows server 2003 y 2008Diferencias entre windows server 2003 y 2008
Diferencias entre windows server 2003 y 2008
 
Anexo 2
Anexo 2Anexo 2
Anexo 2
 
3 a directory
3 a directory3 a directory
3 a directory
 
Siller
SillerSiller
Siller
 

Destacado

Introduccionala tiendaonline semana1
Introduccionala tiendaonline semana1Introduccionala tiendaonline semana1
Introduccionala tiendaonline semana1MadBlake
 
Acelerando en la_desaceleracion(google)
Acelerando en la_desaceleracion(google)Acelerando en la_desaceleracion(google)
Acelerando en la_desaceleracion(google)MadBlake
 
Presentación extensiones interesantes joomla
Presentación extensiones interesantes joomlaPresentación extensiones interesantes joomla
Presentación extensiones interesantes joomlaMadBlake
 
Movimiento Rectilineo Uniformemente Acelerado (Fisica 1)
Movimiento Rectilineo Uniformemente Acelerado (Fisica 1)Movimiento Rectilineo Uniformemente Acelerado (Fisica 1)
Movimiento Rectilineo Uniformemente Acelerado (Fisica 1)fannycastilloh
 
M.R.U.A
M.R.U.AM.R.U.A
M.R.U.AJesf94
 
Benefits of drinking water
Benefits of drinking waterBenefits of drinking water
Benefits of drinking waterEason Chan
 
10 Tips for WeChat
10 Tips for WeChat10 Tips for WeChat
10 Tips for WeChatChris Baker
 

Destacado (8)

Introduccionala tiendaonline semana1
Introduccionala tiendaonline semana1Introduccionala tiendaonline semana1
Introduccionala tiendaonline semana1
 
Acelerando en la_desaceleracion(google)
Acelerando en la_desaceleracion(google)Acelerando en la_desaceleracion(google)
Acelerando en la_desaceleracion(google)
 
Presentación extensiones interesantes joomla
Presentación extensiones interesantes joomlaPresentación extensiones interesantes joomla
Presentación extensiones interesantes joomla
 
Movimiento Rectilineo Uniformemente Acelerado (Fisica 1)
Movimiento Rectilineo Uniformemente Acelerado (Fisica 1)Movimiento Rectilineo Uniformemente Acelerado (Fisica 1)
Movimiento Rectilineo Uniformemente Acelerado (Fisica 1)
 
M.R.U.A
M.R.U.AM.R.U.A
M.R.U.A
 
Stay Up To Date on the Latest Happenings in the Boardroom: Recommended Summer...
Stay Up To Date on the Latest Happenings in the Boardroom: Recommended Summer...Stay Up To Date on the Latest Happenings in the Boardroom: Recommended Summer...
Stay Up To Date on the Latest Happenings in the Boardroom: Recommended Summer...
 
Benefits of drinking water
Benefits of drinking waterBenefits of drinking water
Benefits of drinking water
 
10 Tips for WeChat
10 Tips for WeChat10 Tips for WeChat
10 Tips for WeChat
 

Similar a Androidpresentacion 090531114810-phpapp02

Android: desarrollo de aplicaciones
Android: desarrollo de aplicacionesAndroid: desarrollo de aplicaciones
Android: desarrollo de aplicacionesJose Luis Lopez Pino
 
Windows server 2003 Requerimientos del sistema y funciones
Windows server 2003 Requerimientos del sistema y funcionesWindows server 2003 Requerimientos del sistema y funciones
Windows server 2003 Requerimientos del sistema y funcionesMiguel Diliegros
 
Intro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en OlotIntro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en Olothojalataverde
 
Píldora 1: Android intro
Píldora 1: Android introPíldora 1: Android intro
Píldora 1: Android introhojalataverde
 
1 corte de plataforma(javier mponfellis y jesus gonzalez)
1 corte de plataforma(javier mponfellis y jesus gonzalez)1 corte de plataforma(javier mponfellis y jesus gonzalez)
1 corte de plataforma(javier mponfellis y jesus gonzalez)JavierMponfellis
 
CvTrafficCounter Video
CvTrafficCounter VideoCvTrafficCounter Video
CvTrafficCounter VideoPaul Arévalo
 
Deletreando Android
Deletreando AndroidDeletreando Android
Deletreando Androidjezabelink
 
Aplicaciones android
Aplicaciones androidAplicaciones android
Aplicaciones androidedwin
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidosJaziel Torres
 
Acciones de jsp
Acciones de jspAcciones de jsp
Acciones de jspfabito1112
 
Los sistemas operativos de Red
Los sistemas operativos de Red Los sistemas operativos de Red
Los sistemas operativos de Red ANDINO2017
 
Servidor de archivos y de datos
Servidor de archivos y de datosServidor de archivos y de datos
Servidor de archivos y de datosJulioLeon96
 
Administración de redes
Administración de redesAdministración de redes
Administración de redesSamir Miranda
 
Acciones de jsp
Acciones de jspAcciones de jsp
Acciones de jspfabito1112
 

Similar a Androidpresentacion 090531114810-phpapp02 (20)

Android: desarrollo de aplicaciones
Android: desarrollo de aplicacionesAndroid: desarrollo de aplicaciones
Android: desarrollo de aplicaciones
 
Windows server 2003 Requerimientos del sistema y funciones
Windows server 2003 Requerimientos del sistema y funcionesWindows server 2003 Requerimientos del sistema y funciones
Windows server 2003 Requerimientos del sistema y funciones
 
Intro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en OlotIntro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en Olot
 
Píldora 1: Android intro
Píldora 1: Android introPíldora 1: Android intro
Píldora 1: Android intro
 
1 corte de plataforma(javier mponfellis y jesus gonzalez)
1 corte de plataforma(javier mponfellis y jesus gonzalez)1 corte de plataforma(javier mponfellis y jesus gonzalez)
1 corte de plataforma(javier mponfellis y jesus gonzalez)
 
CvTrafficCounter Video
CvTrafficCounter VideoCvTrafficCounter Video
CvTrafficCounter Video
 
Deletreando Android
Deletreando AndroidDeletreando Android
Deletreando Android
 
Sistemas Distribuidos
Sistemas DistribuidosSistemas Distribuidos
Sistemas Distribuidos
 
Iphone
IphoneIphone
Iphone
 
Introduccion a Android
Introduccion a AndroidIntroduccion a Android
Introduccion a Android
 
S.o
S.oS.o
S.o
 
Curso Desarrollo Android
Curso Desarrollo AndroidCurso Desarrollo Android
Curso Desarrollo Android
 
Aplicaciones android
Aplicaciones androidAplicaciones android
Aplicaciones android
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
2 power point
2 power point2 power point
2 power point
 
Acciones de jsp
Acciones de jspAcciones de jsp
Acciones de jsp
 
Los sistemas operativos de Red
Los sistemas operativos de Red Los sistemas operativos de Red
Los sistemas operativos de Red
 
Servidor de archivos y de datos
Servidor de archivos y de datosServidor de archivos y de datos
Servidor de archivos y de datos
 
Administración de redes
Administración de redesAdministración de redes
Administración de redes
 
Acciones de jsp
Acciones de jspAcciones de jsp
Acciones de jsp
 

Último

Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 

Último (10)

Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 

Androidpresentacion 090531114810-phpapp02

  • 1. Android: desarrollo de aplicaciones  Raúl Jiménez Ortega  Nicolás Fernández Valverde  José Luis López Pino
  • 2. Diseño de la interfaz de usuario Existen dos formas de implementar la interfaz:  Procedural: como tradicionalmente se han implementado las interfaces en Java → estilo AWT, SWING, etc.  Declarativa: usando el lenguaje de marcas XML.
  • 4. Servicios basados en localización  Localización: ofrece la clase LocationManager para acceder a los sistemas de localización.  Acelerómetro y brújula: se gestiona con el SensorManager y requiere el uso de listeners. Para la carga se usa la función: getSystemService(nombre_del_servicio) Tres sistemas intregados:
  • 5. Cámara - Configuración  Podemos manipular la configuración:  Frecuencia de previsualización: (setPreviewFrameRate)  Tamaño: (setPictureSize)  Codificación de la imagen: (setPictureFormat)  Etc. Camera.Parameters parameters = camera.getParameters(); parameters.setPictureFormat(PixelFormat.JPEG); camera.setParameters(parameters); Ejemplo:
  • 6. Cámara - Captura private void takePicture() { camera.takePicture(shutterCallback, rawCallback, jpegCallback); }  shutterCallBack: se lanza justo cuando se cierra el disparador de la cámara.  rawCallBack: recibe la imagen sin codificar tras haber sido tomada.  jpegCallBack: recibe la imagen en formato JPEG.
  • 7. Servicios Android  Se ejecutan en segundo plano.  El usuario no interactúa con los servicios, sino que son manejados por las aplicaciones.  Realizan tareas como actualizar Content- Providers o manejar notificaciones.  Por ejemplo se programan como servicio las actualizaciones automáticas para los programas.
  • 8. Gestión de un servicio.  Creación: Sobrecargamos los siguientes métodos de la clase services:  OnCreate : Acciones cuando se crea el servicio.  OnBind : Acciones para ligarlo a una aplicación.  OnStart : Acciones cuando se inicia el servicio.  Lanzar el servicio. Dos formas  Explícita: startService(new Intent(MyService.MY_ACTION));  Implícita:startService(new Intent(this,MyService.class));  Pararlo : stopService(new Intent(this, service.getClass()));
  • 9. Hebras  Todos los componentes de la aplicación (incluidos los servicios) corren sobre la hebra principal.  Para evitar que la aplicación se bloquee las operaciones más costosas en tiempo se realizan en hebras de segundo plano.  Se programan en hebras tareas como el manejo de ficheros, transacciones en bases de datos o búsquedas de redes.
  • 10. Reproducción Multimedia  Creamos una instancia de la clase MediaPlayer por cada archivo.  MediaPlayer implementa funciones:  De reproducción: start, stop, pause, seek...  Recuperación de información: nombre, tamaño, tipo...  Límite de instancias de la clase → tenemos que liberar recursos.
  • 11. Grabación Multimedia  Creamos una instancia de MediaRecorder con las opciones pertinentes:  Establecemos la fuente con setAudioSource o con setVideoSource.  Definir el formato de salida con setOutputFormat.  Seleccionar el codificador a utilizar.  Y el fichero de salida.  Con start, stop y release manejamos la grabación.
  • 12. El gestor de notificaciones  Mensaje en la barra de estados.  Icono en la barrra de estados  Iluminar LEDs.  Vibración.  Sonidos.
  • 13. Native Android Content Providers Integración entre aplicaciones Content Provider Datos que ofrece Browser Historial, marcadores y otra información del navegador. CallLog Detalles sobre llamadas (perdidas, duración, etc.) Contacts Datos sobre los contactos de tu agenda MediaStore Ficheros multimedia como audio, vídeo e imágenes. Settings Configuración del dispositivo.
  • 14. Hacer nuevos Content Providers  Utilizar un sistema de almacenamiento de datos (usualmente en ficheros o usando SQLite).  Crear una clase que herede de ContentProvider.  Definiendo una serie de métodos: getType, onCreate, query, insert, delete y update.  Declarar el proveedor de contenido en el fichero AndroidManifest.xml de nuestra aplicación.
  • 15. Opciones generales de conexión  Establecer red preferida.  Activar o desactivar un tipo de red.  ¿Falló la conexión a la red preferida?  ¿Hay conexión?  ¿Por qué falló la conexión?
  • 16. Opciones específicas de WiFi  ¿Está el dispositivo habilitado?  Habilitar el dispositivo.  Obtener lista de redes configuradas.  Conectar a una red.  Obtener información de la conexión.  Escanear todos los puntos de acceso.  Consultar el resultado del escaneo.
  • 17. Conclusiones  Está diseñado para facilitar el desarrollo a terceros.  Nos ofrece bibliotecas para trabajar con dispositivos que tradicionalmente no se incluían en equipos móviles.  Facilita la integración entre aplicaciones.  Ofrece un alto nivel de abstracción frente al hardware nunca visto antes.  Al estar basado en Linux ofrece un soporte robusto y fiable.  Que esté mantenido por la Open Handset Alliance ofrece garantías de perdurabilidad en el tiempo.