Presentacion para la Flagship Store de Telefónica

19
ANDROID Iniciación al desarrollo de aplicaciones nativas para sistemas operativos Android Javier Téllez

description

Introducción al sistema operativo Android y sus principales peculiaridades

Transcript of Presentacion para la Flagship Store de Telefónica

Page 1: Presentacion para la Flagship Store de Telefónica

ANDROIDIniciación al desarrollo de aplicaciones nativas para

sistemas operativos AndroidJavier Téllez

Page 2: Presentacion para la Flagship Store de Telefónica

¿Qué es Android?

• Sistema operativo orientado a dispositivos móviles basado en Linux 2.6 (capa HW - SW, kernel)

• 51% del mercado de apps (iOS 40%)

• Lenguaje de desarrollo JAVA

• Framework propio

• Android es gratuito, libre y no requiere licencias

Page 3: Presentacion para la Flagship Store de Telefónica

¿Qué es Android?

• Libertad para los programadores a la hora de acceder a las funciones del móvil

• Las apps no difieren del núcleo del teléfono, todas tienen acceso a los mismos servicios.

• Cada aplicación se ejecuta en su propio proceso y máquina virtual, Dalvik, optimizada para entornos bajos en recursos.

Page 4: Presentacion para la Flagship Store de Telefónica

Herramientas de desarrollo

• Emulador Android

• Android SDK (plugin Eclipse)

• DDMS ( Dalvik Debug Monitor Service ), gestión de procesos

• ADB (Android Debug Bridge), instalador para el emulador

Page 5: Presentacion para la Flagship Store de Telefónica

!

Características!

Page 6: Presentacion para la Flagship Store de Telefónica

Características de Android

• La máquina virtual Dalvik: Optimizada para dispositivos móviles.

• Navegador integrado: Basado en el motor del proyecto abierto WebKit. (Safari y Chrome)

• Gráficos optimizados: Suministrados por una librería de gráficos 2D. Los gráficos 3D están basados en la especificación OpenGL ES 1.0, con soporte para aceleración gráfica por hardware.

Page 7: Presentacion para la Flagship Store de Telefónica

Características de Android• SQLite: Para estructurar el almacenamiento de datos.

• Soporte multimedia: Común para audio, video, imágenes, soportando varios formatos (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF).

• Telefonía GSM

• Bluetooth, 3G, 4G, y WiFi (Si el hardware lo soporta).

• Cámara, GPS, brújula y acelerómetro (Si el hardware lo soporta).

• Completo entorno de desarrollo: Incluye un dispositivo emulador, herramientas de depuración, y un plugin para el IDE Eclipse

Page 8: Presentacion para la Flagship Store de Telefónica

!

Arquitectura!

Page 9: Presentacion para la Flagship Store de Telefónica

Arquitectura de Android• Aplicaciones: Las aplicaciones base incluyen un cliente

de email, programa de SMS, calendario, mapas, navegador, contactos, y otros. Todas las aplicaciones son escritas en el lenguaje de programación Java.

• Framework de aplicaciones: Los desarrolladores tienen acceso completo a los mismos APIs del framework usados por las aplicaciones base.

• Librerías: incluye un conjunto de librerías C/C++ usadas por varios componentes del sistema Android. (librerías de medios, librerías de gráficos, 3d, SQLite, entre otras)

Page 10: Presentacion para la Flagship Store de Telefónica

Arquitectura de Android

• Núcleo - Linux: Android depende de un Linux versión 2.6 para los servicios base del sistema como seguridad, gestión de memoria, gestión de procesos, stack de red, y modelo de drivers. El núcleo también actúa como una capa de abstracción entre el hardware y el resto del stack de software.

Page 11: Presentacion para la Flagship Store de Telefónica
Page 12: Presentacion para la Flagship Store de Telefónica

!

Componentes de una aplicación!

Page 13: Presentacion para la Flagship Store de Telefónica

Componentes• Actividades: Pantalla de la interfaz de usuario, una aplicación puede tener una o

mas actividades

• Las vistas (view) son los componentes básicos con los que se construye la interfaz gráfica de la aplicación

• Layout: Contenedores de elementos gráficos.

• Intent: se pueden entender como los mensajes o peticiones que son enviados entre los distintos componentes de una aplicación o entre distintas aplicaciones. Mediante un intent se puede mostrar una actividad desde cualquier otra, iniciar un servicio, enviar un mensaje broadcast, iniciar otra aplicación, etc.

• Servicios: Tarea que se ejecuta en segundo plano. Ej.: reproducir música en segundo plano

• Fragments: Porciones independientes con diseño y lógica para integrar en una actividad.

Page 14: Presentacion para la Flagship Store de Telefónica

Componentes• Content Provider: un proveedor de contenidos

(content provider) es el mecanismo que se ha definido en Android para compartir datos entre aplicaciones.

• Broadcast Receiver: componente destinado a detectar y reaccionar ante determinados mensajes o eventos globales generados por el sistema.

• Widget: elementos visuales, normalmente interactivos, que pueden mostrarse en la pantalla principal (home screen) del dispositivo Android

Page 15: Presentacion para la Flagship Store de Telefónica

!

Estructura básica de una aplicación en ANDROID!

Page 16: Presentacion para la Flagship Store de Telefónica
Page 17: Presentacion para la Flagship Store de Telefónica

Estructura• src: Clases java. Es decir, código.

• res: Recursos necesarios para la app

• drawable-?dpi: imágenes o ficheros XML que dibujen una imagen u objeto gráfico.

• layout: ficheros XML que dibujan la UI.

• values: ficheros XML que contienen valores estáticos: etiquetas de texto, de botones, colores, etc

Page 18: Presentacion para la Flagship Store de Telefónica

Estructura

• AndroidManifest.xml: Parámetros de configuración de la aplicación como permisos, qué Activity es la principal, etc.

• Assets: recursos tipográficos, raw,…

Page 19: Presentacion para la Flagship Store de Telefónica