You are on page 1of 20

Introducción a la Programación en Android

Iker Perez de Albeniz
Cursillos de Septiembre 2010 Universidad de Deusto

http://www.ikeralbeniz.net http://www.deusto.es

Introducción
El objetivo de este curso es:


• •

Introducción a la plataforma android: estado actual, evolución de la plataforma Introducción a la plataforma android como desarrollador: entrono de programación y publicación Introducción a la programación android: teoría y practica básica de programación de pequeñas aplicaciones

Introducción Mercado actual de los SmartPhones: • • • • • Symbian Windows Mobile iPhone Android BlackBerry .

Introducción Perfiles de Usuario en PC: Usuario General Windows Usuario Techi/Técnico GNU/Linux Usuario Techi/Elitista Mac .

Introducción Perfiles de Usuario en PC: Usuario General Android Usuario Techi/Técnico Android Usuario Techi/Elitista iPhone Existe un cuarto perfil: Blackberry .

Introducción Factores para el éxito de una plataforma: • • • • FanBoys Disponibilidad de Software Gratuito Facilidad de desarrollo y publicación Bajo coste / Promociones Operadoras .

Introducción .

Introducción .

plataforma abierta y aun en un proceso de desarrollo (cambios). plataforma mas • cerrada. posibilidades de crecimiento impresionantes. Android: menos conocido en el mercado. posibilidades de crecimiento buenas. Android el teléfono de las masas!! .Introducción Conclusiones: • iPhone: mercado mas maduro.

(nuevas APIs). Actualmente existe un volumen no demasiado alto de terminales con muy diferentes versiones de android. Cada nueva versión incorpora mas funcionalidades. Esperemos que cuando llegue el boom de esta plataforma esta sea mas estable. . posibilidades tanto a nivel funcional como a nivel estructural.Introducción ¿En que me afecta en todo esto a la hora de programar? • • • • Actualmente están saliendo diferentes versiones de android en periodos muy cortos de tiempo.

android.html .com/resources/dashboard/platform-versions.Introducción Distribución de versiones de android http://developer.

setOnClickListener(new View.id.5 class MyActivity extends Activity { findViewById(R.Introducción Ejemplo: Evento onClick para un botón en android 1.myButton).OnClickListener() { public void onClick(View v) { // Do stuff } }). } .

Introducción Ejemplo: Evento onClick para un botón en android 1.6 <Button android:onClick="myClickHandler" /> class MyActivity extends Activity { public void myClickHandler(View target) { // Do stuff } } También hay que tener en cuenta las capacidades a nivel de hardware… .

Entorno Programación SDK .

xml strings.xml .png main.png Imagen.png Icon.Entorno Programación Estructura de un Proyecto Android: • Res (recursos) – – – – drawable (imágenes –por defecto -) • • icon.xml (textos – por defecto-) Strings.png Imagen.xml (textos – en japones-) drawable-jp (imágenes – japones-) • • • • • layout (diseños de pantalla) values values-jp – • • src (codigo java) AndroidManifest.

APK (ZIP) se compone de los siguientes archivos: • • • • • classes.Aplicación Android Estructura .arsc (relaciona los nombres de los recursos con sus identificadores .java compilados res (recursos) META-INF (firmas de la aplicacion) AndroidManifest.dex – – – Dalvik Magic: dex\nXXX\0 Empaquetado de los .xml (compilado) resources.java-) .R.

Aplicación Android Tipos de Aplicación: • • Activity Es el componente mas común. Broadcast Receiver Son componentes que escuchan eventos del generados por otras aplicaciones (llegada de un sms. Seria equivalente a un FORM o ventana y a partir de la base Activity existen Activitys derivadas que implementan metodos para facilitar la integración de elementos como listas. bateria baja... mapas o tabs. Content Provider Son estructuras que permiten intercambian información entre aplicaciones • • .) Service Servicios que se ejecutan en un segundo plano.

xml res/values/ res/values-de/ res/values-fr/ res/values-fr/ (res/values/) Location of flag.Entorno Programación Localización: Locale Code Default de-rDE fr-rFR fr-rCA en-rCA Language / Country English / United Kingdom German / Germany French / France French / Canada English / Canada Location of strings.png res/drawable/ res/drawable-de-rDE/ res/drawable-fr-rFR/ res/drawable-fr-rCA/ res/drawable-en-rCA/ ja-rJP en-rUS Japanese / Japan English / United States res/values-ja/ (res/values/) res/drawable-ja-rJP/ res/drawable-en-rUS/ .

Sistema Publicación .

Ejercicios Prácticos Cliente Twitter .