SlideShare una empresa de Scribd logo
1 de 20
1
Desarrollo de aplicaciones
móviles en Android
Índice
2
Historia
¿Qué es Android?
Arquitectura del sistema
Entorno de desarrollo
Arquitectura de las
aplicaciones
Almacenamiento de
datos
Multimedia
Práctica final
Objetivos
3
Arquitectura del sistema
Analizar la arquitectura que
compone el sistema
operativo Android.
Características de la
máquina Dalvik.
Conocer la principales
librerías de incluidas en la
plataforma Android.
Framework aplicaciones
Android.
Características
fundamentales del Android
market.
Arquitectura Sistema
4
Arquitectura Sistema: Linux Kernel
 Versión 2.6.x del kernel de Linux.
 Capa de abstracción entre el hardware y el
software.
 Android aprovecha:
 La seguridad.
 Gestión de memoria.
 Gestión de procesos.
 Red y modelo de drivers.
5
Arquitectura Sistema: Linux Kernel (II)
 Relación versiones Linux por versión Android
6
Versión Android Versión Linux
Android 1.5 (Cupcake) 2.6.27
Android 1.6 (Donut) 2.6.29
Android 2.0 (Eclair) 2.6.29
Android 2.2 (Froyo) 2.6.32
Gingerbread 2.6.33
Arquitectura Sistema: Librerías Android
 Conjunto de librerías (C & C++) usadas por varios componentes
Android del sistema (Application Framework).
 Surface Manager: Gestión del acceso a la pantalla.
 Media Framework: Reproducción de imágenes, audio y video.
 SQLite: Pequeña base de datos relacional.
 WebKit: Navegador (Browser) optimizado.
 SGL: Gráficos 2D.
 Open GL | ES: Librerías 3D.
 FreeType: Renderización de vectores e imágenes (bitmap).
7
Arquitectura Sistema: Android runtime
Core Libraries: Formado por un conjunto de librerías
base para ofrecer funcionalidad elemental y de bajo
nivel, escritas en C y C++.
Utiliza el Kernel de Linux para la ejecución de
aplicaciones (1 aplicación = 1 proceso = 1 DVM)
Máquina virtual Dalvik, con código preparado
teniendo en cuenta la duración de las baterías y la
limitación de memoria.
8
Arquitectura Sistema: Dalvik Virtual Machine
 Condicionantes de los dispositivos móviles
 Poca duración de la batería.
 Recursos muy escasos (memoria, cpu).
 Limitaciones visuales (pantallas poca resolución).
 Compartición y priorización de recursos.
 Características de la DVM
 Usada en entornos con restricciones de memoria y
procesador.
 Herramienta dx convierte .class (clase o aplicación
en JAVA) a dex.
 Ejecuta aplicaciones en formato .dex (Dalvik
EXecutable).
 Permite la ejecución de varias instancias a la vez.
 No es una JVM, no ejecuta bytecode sino registros.
 Clases de Java ME, AWT o Swing no están
soportadas.
9
.JAVA
.CLASS
.DEX
javac
dx
JVM
DVM
Arquitectura Sistema : Framework de aplicaciones
Proporciona una plataforma abierta para el desarrollo
que permite la reutilización de componentes.
A través del framework, el desarrollador puede
acceder a los dispositivos, información de ubicación,
ejecutar servicios, etc,.
Las aplicaciones del core utilizan este mismo APIs
framework .
Views, Content Providers, Managers...
10
Arquitectura Sistema: Capa de aplicaciones
11
 En esta capa se ubicarán las aplicaciones
‘preinstaladas’ y las desarrolladas por el desarrollador .
 Aplicaciones escritas en lenguaje JAVA.
 Aplicaciones incluidas por defecto:
 Cliente email
 Gestor SMS
 Navegador
 Contactos
 Android Market…
.JAVA
.CLASS
.DEX
javac
dx
JVM
DVM
Arquitectura Sistema: Android Market
 Permite distribuir aplicaciones de manera sencilla.
 Cualquier desarrollador puede publicar en el
Market, previo pago único de 25$.
 Incluso aplicaciones no firmadas.
 70% para el desarrollador / 30% para Google.
 No se revisan las aplicaciones que se suben.
 Selección a través de votaciones y comentarios.
 Se pueden eliminar apps del market si dañan
dispositivos, invasión de privacidad, etc.
 Sólo en 9 países apps de pago.
 <100k apps: 65% Gratuitas vs 35% Pago.
12
Cifras
Tamaño de las tiendas
Número total de apps
Agosto 2010 - Distimo
Cifras
Crecimiento tiendas trimestral
Mayo 2010 - Distimo
Cifras
Gratis vs De Pago Julio 2010 - Distimo
Cifras
Comparativas de precio
Precio medio app de pago
(Distimo Mayo 2010)
Cifras
¡Tener el mayor número de aplicaciones no
implica tener el mayor número de terminales…
y viceversa!
Cifras
Y los desarrolladores, ¿Qué plataforma prefieren?
Cifras
Que les motiva a los desarrolladores para
decantarse por una plataforma
Conclusiones
20
Arquitectura del sistema
 Analizar la arquitectura que
compone el sistema
operativo Android.
 Características de la
máquina Dalvik.
 Conocer la principales
librerías de incluidas en la
plataforma Android.
 Framework aplicaciones
Android.
 Características
fundamentales del Android
market.

Más contenido relacionado

La actualidad más candente

Arquitectura de software para aplicaciones móviles
Arquitectura de software para aplicaciones móvilesArquitectura de software para aplicaciones móviles
Arquitectura de software para aplicaciones móviles
Sergio Castillo Yrizales
 

La actualidad más candente (19)

Que es android studio
Que es android studioQue es android studio
Que es android studio
 
Lenguajes de Programación: Android
Lenguajes de Programación: AndroidLenguajes de Programación: Android
Lenguajes de Programación: Android
 
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
 
Tecnología androide_Mishelle_Ruiz
Tecnología androide_Mishelle_RuizTecnología androide_Mishelle_Ruiz
Tecnología androide_Mishelle_Ruiz
 
Iniciación a Android
Iniciación a AndroidIniciación a Android
Iniciación a Android
 
Desarrollo de Aplicaciones Android 2014/03
Desarrollo de Aplicaciones Android 2014/03Desarrollo de Aplicaciones Android 2014/03
Desarrollo de Aplicaciones Android 2014/03
 
"Android de la A a la Z" -- Unidad 8
"Android de la A a la Z" -- Unidad 8"Android de la A a la Z" -- Unidad 8
"Android de la A a la Z" -- Unidad 8
 
Herramientas para Desarrollo de Aplicaciones Moviles
Herramientas para Desarrollo de Aplicaciones MovilesHerramientas para Desarrollo de Aplicaciones Moviles
Herramientas para Desarrollo de Aplicaciones Moviles
 
"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
 
"Android de la A a la Z" -- Unidad 2
"Android de la A a la Z" -- Unidad 2"Android de la A a la Z" -- Unidad 2
"Android de la A a la Z" -- Unidad 2
 
"Android de la A a la Z" -- Unidad 6
"Android de la A a la Z" -- Unidad 6"Android de la A a la Z" -- Unidad 6
"Android de la A a la Z" -- Unidad 6
 
Entorno-de-Desarrollo-Android-Studio
Entorno-de-Desarrollo-Android-StudioEntorno-de-Desarrollo-Android-Studio
Entorno-de-Desarrollo-Android-Studio
 
"Android de la A a la Z" -- Introducción
"Android de la A a la Z" -- Introducción"Android de la A a la Z" -- Introducción
"Android de la A a la Z" -- Introducción
 
"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
 
Protocolo de interfaz entre aplicaciones
Protocolo de interfaz entre aplicacionesProtocolo de interfaz entre aplicaciones
Protocolo de interfaz entre aplicaciones
 
aplicaciones moviles
aplicaciones movilesaplicaciones moviles
aplicaciones moviles
 
Arquitectura de software para aplicaciones móviles
Arquitectura de software para aplicaciones móvilesArquitectura de software para aplicaciones móviles
Arquitectura de software para aplicaciones móviles
 
Descargar Java JDK, Netbeans y Java ME para Desarrollo de Aplicaciones Moviles
Descargar Java JDK, Netbeans y Java ME para Desarrollo de Aplicaciones MovilesDescargar Java JDK, Netbeans y Java ME para Desarrollo de Aplicaciones Moviles
Descargar Java JDK, Netbeans y Java ME para Desarrollo de Aplicaciones Moviles
 
Gps
GpsGps
Gps
 

Destacado

Charla de seguridad en dispositivos móviles
Charla de seguridad en dispositivos móvilesCharla de seguridad en dispositivos móviles
Charla de seguridad en dispositivos móviles
Gissim
 
Tendencias de marketing digital en aplicaciones moviles
Tendencias de marketing digital en aplicaciones movilesTendencias de marketing digital en aplicaciones moviles
Tendencias de marketing digital en aplicaciones moviles
lc_jaramillo
 
Conferencia Android Cparty11
Conferencia Android Cparty11Conferencia Android Cparty11
Conferencia Android Cparty11
jssernac
 
Circular Auditoría de Datos
Circular Auditoría de DatosCircular Auditoría de Datos
Circular Auditoría de Datos
AGM Abogados
 
0020 aplicaciones para_dispositivos_android
0020 aplicaciones para_dispositivos_android0020 aplicaciones para_dispositivos_android
0020 aplicaciones para_dispositivos_android
GeneXus
 

Destacado (20)

Presentación Android - Campus Party Colombia 2.010
Presentación Android - Campus Party Colombia 2.010Presentación Android - Campus Party Colombia 2.010
Presentación Android - Campus Party Colombia 2.010
 
Seminario Desarrollo de Aplicaciones Móviles que Merezcan la Pena (Valencia, ...
Seminario Desarrollo de Aplicaciones Móviles que Merezcan la Pena (Valencia, ...Seminario Desarrollo de Aplicaciones Móviles que Merezcan la Pena (Valencia, ...
Seminario Desarrollo de Aplicaciones Móviles que Merezcan la Pena (Valencia, ...
 
Android studio
Android studioAndroid studio
Android studio
 
Arquitectura, aplicaciones y seguridad en Android
Arquitectura, aplicaciones y seguridad en AndroidArquitectura, aplicaciones y seguridad en Android
Arquitectura, aplicaciones y seguridad en Android
 
ENTORNOS DE DESARROLLO: ANDROID STUDIO - INSTALACIÓN
ENTORNOS DE DESARROLLO: ANDROID STUDIO - INSTALACIÓN ENTORNOS DE DESARROLLO: ANDROID STUDIO - INSTALACIÓN
ENTORNOS DE DESARROLLO: ANDROID STUDIO - INSTALACIÓN
 
Generalidades-de-Android-Estudio
Generalidades-de-Android-EstudioGeneralidades-de-Android-Estudio
Generalidades-de-Android-Estudio
 
ENTORNOS DE DESARROLLO: ANDROID STUDIO - ESTRUCTURA
ENTORNOS DE DESARROLLO: ANDROID STUDIO - ESTRUCTURA ENTORNOS DE DESARROLLO: ANDROID STUDIO - ESTRUCTURA
ENTORNOS DE DESARROLLO: ANDROID STUDIO - ESTRUCTURA
 
Android studio
Android studioAndroid studio
Android studio
 
Controles y Objetos Android Studio (Actualizada 2016)
Controles y Objetos Android Studio (Actualizada 2016)Controles y Objetos Android Studio (Actualizada 2016)
Controles y Objetos Android Studio (Actualizada 2016)
 
Con19 contrato auditoria_proteccion_datos
Con19 contrato auditoria_proteccion_datosCon19 contrato auditoria_proteccion_datos
Con19 contrato auditoria_proteccion_datos
 
DERECHOS DE PRIVACIDAD Y DE INFORMACIÓN
DERECHOS DE PRIVACIDAD Y DE INFORMACIÓNDERECHOS DE PRIVACIDAD Y DE INFORMACIÓN
DERECHOS DE PRIVACIDAD Y DE INFORMACIÓN
 
Charla de seguridad en dispositivos móviles
Charla de seguridad en dispositivos móvilesCharla de seguridad en dispositivos móviles
Charla de seguridad en dispositivos móviles
 
seguridad de so
seguridad de soseguridad de so
seguridad de so
 
Tendencias de marketing digital en aplicaciones moviles
Tendencias de marketing digital en aplicaciones movilesTendencias de marketing digital en aplicaciones moviles
Tendencias de marketing digital en aplicaciones moviles
 
Conferencia Android Cparty11
Conferencia Android Cparty11Conferencia Android Cparty11
Conferencia Android Cparty11
 
Circular Auditoría de Datos
Circular Auditoría de DatosCircular Auditoría de Datos
Circular Auditoría de Datos
 
Ciencias
CienciasCiencias
Ciencias
 
0020 aplicaciones para_dispositivos_android
0020 aplicaciones para_dispositivos_android0020 aplicaciones para_dispositivos_android
0020 aplicaciones para_dispositivos_android
 
Aplicaciones Móviles para Negocios | Incrementa Productividad
Aplicaciones Móviles para Negocios | Incrementa Productividad Aplicaciones Móviles para Negocios | Incrementa Productividad
Aplicaciones Móviles para Negocios | Incrementa Productividad
 
Aplicaciones móviles que se vean y se sientan bien
Aplicaciones móviles que se vean y se sientan bienAplicaciones móviles que se vean y se sientan bien
Aplicaciones móviles que se vean y se sientan bien
 

Similar a Desarrollo android - 2 - arquitectura del sistema

Fo 2-introduccion-android-arquitectura-de-sistema
Fo 2-introduccion-android-arquitectura-de-sistemaFo 2-introduccion-android-arquitectura-de-sistema
Fo 2-introduccion-android-arquitectura-de-sistema
Mike Chavez
 
12j sistemaandroid texto
12j sistemaandroid texto12j sistemaandroid texto
12j sistemaandroid texto
Henry Ortiz
 

Similar a Desarrollo android - 2 - arquitectura del sistema (20)

Fo 2-introduccion-android-arquitectura-de-sistema
Fo 2-introduccion-android-arquitectura-de-sistemaFo 2-introduccion-android-arquitectura-de-sistema
Fo 2-introduccion-android-arquitectura-de-sistema
 
Documento de android
Documento de androidDocumento de android
Documento de android
 
Androidoriiginal
AndroidoriiginalAndroidoriiginal
Androidoriiginal
 
Arquitectura 63583.pptx
Arquitectura 63583.pptxArquitectura 63583.pptx
Arquitectura 63583.pptx
 
Tecnología androide
Tecnología androideTecnología androide
Tecnología androide
 
Tecnología androide
Tecnología androideTecnología androide
Tecnología androide
 
12j sistemaandroid texto
12j sistemaandroid texto12j sistemaandroid texto
12j sistemaandroid texto
 
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
 
Android
AndroidAndroid
Android
 
Android
AndroidAndroid
Android
 
Presentacion para la Flagship Store de Telefónica
Presentacion para la Flagship Store de TelefónicaPresentacion para la Flagship Store de Telefónica
Presentacion para la Flagship Store de Telefónica
 
Funcion android
Funcion androidFuncion android
Funcion android
 
Seminario Android (Parte 1) - movilforum
Seminario Android (Parte 1) - movilforumSeminario Android (Parte 1) - movilforum
Seminario Android (Parte 1) - movilforum
 
Curso introducción a android
Curso introducción a android   Curso introducción a android
Curso introducción a android
 
Curso introducción a Android
Curso introducción a AndroidCurso introducción a Android
Curso introducción a Android
 
Deletreando Android
Deletreando AndroidDeletreando Android
Deletreando Android
 
Sistema Operativo Android
Sistema Operativo AndroidSistema Operativo Android
Sistema Operativo Android
 
Sistema Operativo Android
Sistema Operativo AndroidSistema Operativo Android
Sistema Operativo Android
 
Sistema Operativo Android
Sistema Operativo AndroidSistema Operativo Android
Sistema Operativo Android
 
Olivares
OlivaresOlivares
Olivares
 

Más de Emilio Aviles Avila

Más de Emilio Aviles Avila (20)

Experiencias emprendedor de apps - AppCierta
Experiencias emprendedor de apps - AppCiertaExperiencias emprendedor de apps - AppCierta
Experiencias emprendedor de apps - AppCierta
 
Apps Ser o Estar
Apps Ser o EstarApps Ser o Estar
Apps Ser o Estar
 
Aplicaciones móviles, experiencias de emprendedor
Aplicaciones móviles, experiencias de emprendedorAplicaciones móviles, experiencias de emprendedor
Aplicaciones móviles, experiencias de emprendedor
 
Charla estrategia desarrollo aplicaciones móviles Universidad Girona
Charla estrategia desarrollo aplicaciones móviles Universidad GironaCharla estrategia desarrollo aplicaciones móviles Universidad Girona
Charla estrategia desarrollo aplicaciones móviles Universidad Girona
 
Desarrollo android - 6 - multimedia
Desarrollo android - 6 - multimediaDesarrollo android - 6 - multimedia
Desarrollo android - 6 - multimedia
 
Desarrollo android - 5 - almacenamiento de datos
Desarrollo android  -  5 - almacenamiento de datosDesarrollo android  -  5 - almacenamiento de datos
Desarrollo android - 5 - almacenamiento de datos
 
Desarrollo android - 4 - arquitectura de aplicación
Desarrollo android  - 4 - arquitectura de aplicaciónDesarrollo android  - 4 - arquitectura de aplicación
Desarrollo android - 4 - arquitectura de aplicación
 
Desarrollo android - 3 - entorno de desarrollo
Desarrollo android  - 3 - entorno de desarrolloDesarrollo android  - 3 - entorno de desarrollo
Desarrollo android - 3 - entorno de desarrollo
 
Desarrollo android -1 - introduccion
Desarrollo android  -1 - introduccionDesarrollo android  -1 - introduccion
Desarrollo android -1 - introduccion
 
El mercado de las aplicaciones moviles
El mercado de las aplicaciones movilesEl mercado de las aplicaciones moviles
El mercado de las aplicaciones moviles
 
Curso Taller Android Procesado Imagen
Curso Taller Android Procesado ImagenCurso Taller Android Procesado Imagen
Curso Taller Android Procesado Imagen
 
Taller Curso android WhereAmI
Taller Curso android WhereAmITaller Curso android WhereAmI
Taller Curso android WhereAmI
 
Curso taller android radio streaming
Curso taller android  radio streamingCurso taller android  radio streaming
Curso taller android radio streaming
 
Como ganar dinero con las apps
Como ganar dinero con las appsComo ganar dinero con las apps
Como ganar dinero con las apps
 
Curso Introducción a android
Curso Introducción a androidCurso Introducción a android
Curso Introducción a android
 
Curso desarrollo en android
Curso desarrollo en androidCurso desarrollo en android
Curso desarrollo en android
 
TeCHmi Service Portfolio
TeCHmi Service PortfolioTeCHmi Service Portfolio
TeCHmi Service Portfolio
 
Curso Uml 3.2 Proceso Unificado
Curso Uml   3.2 Proceso UnificadoCurso Uml   3.2 Proceso Unificado
Curso Uml 3.2 Proceso Unificado
 
Curso Uml 3.1 Modelos De Desarrollo De Software
Curso Uml   3.1 Modelos De Desarrollo De SoftwareCurso Uml   3.1 Modelos De Desarrollo De Software
Curso Uml 3.1 Modelos De Desarrollo De Software
 
Curso Uml 2.6 Otros Diagramas
Curso Uml   2.6 Otros DiagramasCurso Uml   2.6 Otros Diagramas
Curso Uml 2.6 Otros Diagramas
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (11)

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 

Desarrollo android - 2 - arquitectura del sistema

  • 2. Índice 2 Historia ¿Qué es Android? Arquitectura del sistema Entorno de desarrollo Arquitectura de las aplicaciones Almacenamiento de datos Multimedia Práctica final
  • 3. Objetivos 3 Arquitectura del sistema Analizar la arquitectura que compone el sistema operativo Android. Características de la máquina Dalvik. Conocer la principales librerías de incluidas en la plataforma Android. Framework aplicaciones Android. Características fundamentales del Android market.
  • 5. Arquitectura Sistema: Linux Kernel  Versión 2.6.x del kernel de Linux.  Capa de abstracción entre el hardware y el software.  Android aprovecha:  La seguridad.  Gestión de memoria.  Gestión de procesos.  Red y modelo de drivers. 5
  • 6. Arquitectura Sistema: Linux Kernel (II)  Relación versiones Linux por versión Android 6 Versión Android Versión Linux Android 1.5 (Cupcake) 2.6.27 Android 1.6 (Donut) 2.6.29 Android 2.0 (Eclair) 2.6.29 Android 2.2 (Froyo) 2.6.32 Gingerbread 2.6.33
  • 7. Arquitectura Sistema: Librerías Android  Conjunto de librerías (C & C++) usadas por varios componentes Android del sistema (Application Framework).  Surface Manager: Gestión del acceso a la pantalla.  Media Framework: Reproducción de imágenes, audio y video.  SQLite: Pequeña base de datos relacional.  WebKit: Navegador (Browser) optimizado.  SGL: Gráficos 2D.  Open GL | ES: Librerías 3D.  FreeType: Renderización de vectores e imágenes (bitmap). 7
  • 8. Arquitectura Sistema: Android runtime Core Libraries: Formado por un conjunto de librerías base para ofrecer funcionalidad elemental y de bajo nivel, escritas en C y C++. Utiliza el Kernel de Linux para la ejecución de aplicaciones (1 aplicación = 1 proceso = 1 DVM) Máquina virtual Dalvik, con código preparado teniendo en cuenta la duración de las baterías y la limitación de memoria. 8
  • 9. Arquitectura Sistema: Dalvik Virtual Machine  Condicionantes de los dispositivos móviles  Poca duración de la batería.  Recursos muy escasos (memoria, cpu).  Limitaciones visuales (pantallas poca resolución).  Compartición y priorización de recursos.  Características de la DVM  Usada en entornos con restricciones de memoria y procesador.  Herramienta dx convierte .class (clase o aplicación en JAVA) a dex.  Ejecuta aplicaciones en formato .dex (Dalvik EXecutable).  Permite la ejecución de varias instancias a la vez.  No es una JVM, no ejecuta bytecode sino registros.  Clases de Java ME, AWT o Swing no están soportadas. 9 .JAVA .CLASS .DEX javac dx JVM DVM
  • 10. Arquitectura Sistema : Framework de aplicaciones Proporciona una plataforma abierta para el desarrollo que permite la reutilización de componentes. A través del framework, el desarrollador puede acceder a los dispositivos, información de ubicación, ejecutar servicios, etc,. Las aplicaciones del core utilizan este mismo APIs framework . Views, Content Providers, Managers... 10
  • 11. Arquitectura Sistema: Capa de aplicaciones 11  En esta capa se ubicarán las aplicaciones ‘preinstaladas’ y las desarrolladas por el desarrollador .  Aplicaciones escritas en lenguaje JAVA.  Aplicaciones incluidas por defecto:  Cliente email  Gestor SMS  Navegador  Contactos  Android Market… .JAVA .CLASS .DEX javac dx JVM DVM
  • 12. Arquitectura Sistema: Android Market  Permite distribuir aplicaciones de manera sencilla.  Cualquier desarrollador puede publicar en el Market, previo pago único de 25$.  Incluso aplicaciones no firmadas.  70% para el desarrollador / 30% para Google.  No se revisan las aplicaciones que se suben.  Selección a través de votaciones y comentarios.  Se pueden eliminar apps del market si dañan dispositivos, invasión de privacidad, etc.  Sólo en 9 países apps de pago.  <100k apps: 65% Gratuitas vs 35% Pago. 12
  • 13. Cifras Tamaño de las tiendas Número total de apps Agosto 2010 - Distimo
  • 15. Cifras Gratis vs De Pago Julio 2010 - Distimo
  • 16. Cifras Comparativas de precio Precio medio app de pago (Distimo Mayo 2010)
  • 17. Cifras ¡Tener el mayor número de aplicaciones no implica tener el mayor número de terminales… y viceversa!
  • 18. Cifras Y los desarrolladores, ¿Qué plataforma prefieren?
  • 19. Cifras Que les motiva a los desarrolladores para decantarse por una plataforma
  • 20. Conclusiones 20 Arquitectura del sistema  Analizar la arquitectura que compone el sistema operativo Android.  Características de la máquina Dalvik.  Conocer la principales librerías de incluidas en la plataforma Android.  Framework aplicaciones Android.  Características fundamentales del Android market.

Notas del editor

  1. Segundo tema (2) Veremos la arquitectura de Android &amp; Android Market
  2. Durará aproximadamente 45’-1hora
  3. Comentar overview desde bottom a top * Linux Kernel 2.6: Abstracción del hardware * Librerias: c/c++ utilizadas por los componentes Android * Runtime: Core library + máquina virtual dalvik * Aplication framework: Plataforma reutilizable de desarrollo opensource * Application: app que corren en los dispositivos Las capas inferiores ofrecen servicios a las superiores Los colores representan lenguajes (C, C++, Java)
  4. El usuario no ve el Linux (sólo a través adb Shell). Abstrae el software del hardware (Drivers…) La seguridad cada app un Linux User ID
  5. Gingerbread 2.6.33 + Honeycomb en 2.6.35 Ver Referencias: documentos entregables: REF003 – Linux
  6. Escritas en C y C++. Se exponen (encapsulan) en el Application Framework con nombres JAVA (android.os…etc)
  7. Cada app corre en un proceso con su propia Dalvik VM. Dalvik ha sido reescrita para ser eficiente (Multiple VM) Se apoya en Linux para hacer la gestión de memoria y threading.
  8. Dalvik = Pueblo Islandia del Ingeniero Dan Bornstein La DalvikVM entiende DEX y está basada en registros (optimizado). JVM entiende de Pilas. Un .DEX incluye múltiples .class
  9. Reutilización
  10. * Las aplicaciones incluidas como vimos dependen del teléfono.
  11. * La única revisión es si dañan dispositivos o privacidad
  12. Cifras para contextualizar el mercado de las aplicaciones móviles. - Apple store cerca de 300.000 aplicaciones. - Android cerca de 140.000
  13. -A nivel de crecimiento cuantitativo Android tiene mayor ritmo de crecimiento. -A nivel cualitativo Apple store cobra ventaja por el proceso de revisión.
  14. -Android es el que más gratuitas tiene (2/3) frente a 1/3 del resto.
  15. -Apple, Nokia y Android en el mismo rango. -RIM y Microsoft el doble, debido a que Blackberry app World y Windows Market Place (ojo no Windows Phone) Precio regulado &amp; imponen precio mínimo.
  16. -Tener el mayor número de dispositivo no implica tener el mayor numero de aplicaciones -Ejemplo Nokia con Symbian = 300 millones y solo 7000 apps -Apple con iPhone = 60 millones de aplicaciones y 300.000 apps
  17. Las plataformas preferidas son Android , Apple… por que…
  18. Lo mas motivante es: -mayor penetración de mercado (tienda app + comunidad) -ingresos potencias