D1 1

Page 1

Cursos de orientación profesional

ACCIONES COFINANCIADAS CON FONDOS COMUNITARIOS DEL FONDO SOCIAL EUROPEO, A TRAVÉS DEL PROGRAMA OPERATIVO FONDO SOCIAL EUROPEO DE CANARIAS 20072013 CON UN PORCENTAJE DE CONFINANCIACIÓN DEL 85%.


Día 1  ¿Qué es Android?  Actividades e intenciones Día 2  Layouts y controles gráficos  Recursos, menús y diálogos Día 3  Persistencia de datos y content providers  Gráficos y animaciones 2D y 3D Día 4  Servicios en segundo plano  Control del hardware especial Día 5  App Widgets y Live folders  Publicación de aplicaciones


Creaci贸n de aplicaciones m贸viles en Android

Rayco Ara帽a rayco.arana@gmail.com Instituto SIANI


     

Historia Características y competidores Dispositivos Arquitectura Modelo de aplicaciones Herramientas de desarrollo


     

Historia Características y competidores Dispositivos Arquitectura Modelo de aplicaciones Herramientas de desarrollo


Julio 2005  Google adquiere Android, Inc. ▪ Pequeña empresa que desarrolla software para móviles (hasta entonces una gran desconocida)

Noviembre 2007  Nace la Open Handset Alliance ▪ Consorcio de empresas unidas con el objetivo de desarrollar estándares abiertos para móviles ▪ Texas Instruments, Broadcom co., Google, HTC, Intel, LG, Marvel Tech., Motorola, Nvidia, Qualcomm, Samsumg Electonics, Sprint Nextel, T-Mobile

▪ Se anuncia su primer producto, Android, plataforma para móviles construida sobre el kernel de Linux 2.6


Octubre 2008  Publicado el proyecto open source Android ▪ Distribuido principalmente con licencia Apache 2.0 ▪ Partes en otras licencias, p.e. GPL v2 para el núcleo

 Se abre el Android Market  HTC Dream (G1), primer teléfono con Android

Diciembre 2008  Nuevas incorporaciones ▪ ARM Holdings, Athreos Communications, Asustek Computer Inc., Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp y Vodafone Group Plc.


Noviembre 2009  Motorola Droid ▪ Consigue vender 1.05 millones de unidades en 74 días, superando el record establecido por el iPhone de Apple

Diciembre 2009

 16.000 aplicaciones en el Market ▪ 60% gratuitas, 30% de pago aprox.

Enero 2010

 Google Nexus One (HTC) ▪ Malas cifras de ventas, apenas 135 mil unidades en 74 días

Febrero 2010

 Google anuncia la buena marcha de Android ▪ 60.000 teléfonos con Android vendidos al día


     

Historia Características y competidores Dispositivos Arquitectura Modelo de aplicaciones Herramientas de desarrollo


Características  Framework de aplicación que habilita la  

reutilización y reemplazo de componentes Máquina virtual Dalvik optimizada para móviles Navegador integrado basado en WebKit Gráficos optimizados por una librería gráfica 2D propia; gráficos 3D basados en la especificación OpenGL ES 1.0 SQLite para almacenamiento de datos estructurados


Características  Soporte para gran variedad de archivos

   

multimedia (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) Telefonía GSM Bluetooth, EDGE, 3G y WiFi (4G, WiMAX,…) Cámara, GPS, compás, acelerómetro,… Entorno de desarrollo completo incluyendo emulador, herramientas de depuración, profiling de memoria y rendimiento y plugin para el IDE Eclipse


Versiones  Octubre 2008 – Android 1.0 ▪ API Level 1

 Febrero 2009 – Android 1.1 ▪ API Level 2

 Abril 2009 – Android 1.5 – Cupcake ▪ API Level 3

 Septiembre 2009 – Android 1.6 – Donut ▪ API Level 4

 Noviembre 2009 – Android 2.0 – Éclair ▪ API Level 5

 Diciembre 2009 – Android 2.0.1 ▪ API Level 6

 Enero 2009 - Android 2.1 ▪ API Level 7


Versiones - Futuro  ???? – Android X.X - Froyo ▪ ¿API Level 8?

 ???? – Android X.X - Gingerbread ▪ ¿API Level 9?


Competidores  Apple ▪ iPhone OS

 RIM ▪ Blackberry

 Microsoft ▪ Windows Mobile 6.5 Phone 7 Series

 Symbian Foundation ▪ Symbian OS

 Palm ▪ WebOS


ď‚Ą

Competidores


     

Historia Características y competidores Dispositivos Arquitectura Modelo de aplicaciones Herramientas de desarrollo


HTC  Dream, Magic (myTouch3G), Hero, Tattoo,

Nexus One(*), Desire, Legend 

Motorola  CLIQ, Droid (Milestone), DEXT

Acer, Archos, Dell, Huawei, Lenovo, LG, Samsumg, Sony Ericsson,…


     

Historia Características y competidores Dispositivos Arquitectura Modelo de aplicaciones Herramientas de desarrollo


   

Kernel linux 2.6 Runtime basado en VM Dalvik Conjunto de librerias C/C++ Framework común a todas las aplicaciones basada en servicios Aplicaciones base implementadas en Java (todas reemplazables)


     

Historia Características y competidores Dispositivos Arquitectura Modelo de aplicaciones Herramientas de desarrollo


Aplicaciones  Escritas en Java y empaquetadas en Android

package (apk)

 Cada aplicación es independiente ▪ Se ejecuta en su propio proceso de Linux ▪ Cada proceso tiene su propia máquina virtual de Java ▪ Cada aplicación tiene asignado un ID de usuario de Linux ▪ Solo ese ID de usuario tiene permisos para acceder a los archivos de la aplicación


Componentes de una aplicación  Actividades  Servicios  Broadcast receivers  Content providers


Actividad  Presenta una interfaz de usuario enfocada en

algo que el usuario puede realizar ▪ Elegir un contacto, seleccionar una fotografía,…

 Una aplicación consistirá en un conjunto de

actividades independientes que trabajan juntas ▪ Una de las actividades se marca como la inicial al arrancar una aplicación


Servicio  No tiene UI  Se ejecuta en background por periodo

indefinido ▪ Ej. Reproductor de música

 Expone una interfaz para intarctuar ▪ Ej. Parar la reproducción de música  Es posible acceder desde otros componentes

o aplicaciones


Broadcast receivers  No realiza ningún acción por si mismo  Recibe y reacciona ante anuncios de tipo

broadcast  Existen muchos originados por el sistema ▪ Ej. Batería baja

 Las aplicaciones puede lanzar un broadcast  No tienen UI, aunque pueden iniciar una

actividad para atender al anuncio


Content providers  Expone un conjunto especifico de datos a

otras aplicaciones ▪ Los datos pueden estar almacenados en cualquier lugar: fichero, SQLite, internet,…

 Hace uso de un ContentResolver para acceder

a los datos expuestos por un content provider


Activación de los componentes  Content providers ▪ Al recibir una petición desde un ContentResolver  Actividades, Servicios y Broadcast Receivers ▪ Al recibir un mensaje asíncrono llamado Intención ▪ En actividades y servicios ▪ Representa la intención de querer realizar algo ▪ Ej. La intención de seleccionar un contacto como remitente

▪ En broadcast receivers ▪ Representa el anuncio del comienzo de una acción ▪ Ej. Anunciar que se ha pulsado el botón de la cámara


El fichero de manifiesto  Propiedades de la aplicación  Declaración de todos los componentes

existentes en la aplicación ▪ Intent filters ▪ Un componente indica a intenciones puede responder


El fichero de manifiesto  Declaración de los permisos requeridos ▪ uses-permission ▪ Acceso a determinado, estado del telefono, acceso a internet, etc. ▪ Los permisos que requiere se muestran al usuario al instalar la aplicación  Declaración de permisos propios ▪ Restringe que aplicaciones pueden hacer uso de un determinado componente


     

Historia Características y competidores Dispositivos Arquitectura Modelo de aplicaciones Herramientas de desarrollo


Android SDK  Paquete con las herramientas necesarias

para desarrollar aplicaciones ▪ Desde el SDK 1.6, aparece Android SDK and AVD Manager, permite actualizar y descargar nuevas versiones del SDK de forma cómoda

 Incluye emulador, driver para el dispositivo

(Windows), herramientas de depuración, etc.


Android SDK  Android Development Tools (ADT) ▪ Plug-in para Eclipse ▪ Incluye vista DDMS ▪ Procesos en ejecución ▪ Navegación por el sistema de ficheros ▪ Logs

▪ Proyecto, editor de vistas, compilación de recursos, firma y exportación de aplicaciones,…


Android NDK  Añadido al SDK  Permite escribir partes críticas de nuestra

aplicación en código nativo (C/C++) ▪ Soporte para OpenGL ES 2.0 ▪ Android >1.5 ▪ Ideal para videojuegos


Creaci贸n de aplicaciones m贸viles en Android

Creando nuestra primera aplicaci贸n para Android


¿Qué es Android?  Android Developer Reference ▪ http://developer.android.com/guide/basics/what-is-android.html ▪ http://developer.android.com/guide/topics/fundamentals.html

 Android Application Development ▪ Reto Meier, Editorial Wrox

 Wikipedia ▪ http://en.wikipedia.org/wiki/Android_(operating_system)


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.