El documento presenta una introducción a la programación en Android. Explica que Android es un sistema operativo para dispositivos móviles desarrollado por Google y otros. Detalla algunas características de Android como su navegador integrado y capacidad para aplicaciones. También describe el entorno de programación de Android incluyendo el SDK, la estructura de proyectos y tipos de aplicaciones como activities y services.
Programación Android: Introducción, entorno y arquitectura
1. Programación
en Android
Octubre 2012
Universidad del Norte
2. Introducción
El objetivos generales:
• 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
3. Android, es un sistema operativo, que está directamente dirigido a dispositivos
móviles. Google le compró esta compañía a su original creador Adroid Inc, y
hoy en día son los de Open Handset Alliance, que es un consorcio que esta
compuesto por alrededor de 48 compañías de Software, Telecomunicaciones
y Hardware. los que la están desarrollando.
Alguna de sus características son:
Que posee un navegador integrado, el cual esta basado en el motor de código
abierto WebKit.
Contiene gráficos optimizados, como lo son los gráficos 2D y 3D.
Almacenamiento de datos estructurados.
Tecnología GSM, la cual es dependiente del Hardware
Además de Wi-Fi, Bluetooth, 3G y EDGE, también dependientes del
Hardware.
Permite Cámaras, GPS, acelerómetro, brújula. Entre muchas otras.
También nos da la posibilidad de ingresar, desde nuestro teléfono y programar
distintas utilidades y herramientas. Para tener una idea, algunos de los
dispositivos que ya te vienen con Android son: Samsung i7500 Galaxy, Lg
Gt360, Motorola Dext, Sci Phone n19 , entre muchísimos otros.
6. Introducción
Perfiles de Usuario en PC:
Usuario General Android
Usuario Techi/Técnico Android
Usuario Techi/Elitista iPhone
Existe un cuarto perfil: Blackberry
7. Introducción
Factores para el éxito de una plataforma:
• FanBoys
• Disponibilidad de Software Gratuito
• Facilidad de desarrollo y publicación
• Bajo coste / Promociones Operadoras
9. Introducción
Conclusiones:
• iPhone: mercado mas maduro, plataforma mas
cerrada, posibilidades de crecimiento buenas.
• Android: menos conocido en el mercado, plataforma
abierta y aun en un proceso de desarrollo (cambios),
posibilidades de crecimiento impresionantes.
Android el teléfono de las masas!!
10.
11.
12.
13. 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.
• Cada nueva versión incorpora mas funcionalidades,
posibilidades tanto a nivel funcional como a nivel
estructural. (nuevas APIs).
• Actualmente existe un volumen no demasiado alto de
terminales con muy diferentes versiones de android.
• Esperemos que cuando llegue el boom de esta
plataforma esta sea mas estable.
15. Introducción
Ejemplo:
Evento onClick para un botón en android 1.5
class MyActivity extends Activity {
findViewById(R.id.myButton).setOnClickListener(new
View.OnClickListener() {
public void onClick(View v) {
// Do stuff
}
}); }
16. 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…
18. Entorno Programación
Estructura de un Proyecto Android:
• Res (recursos)
– drawable (imágenes –por defecto -)
• icon.png
• Imagen.png
– drawable-jp (imágenes – japones-)
• Icon.png
• Imagen.png
– layout (diseños de pantalla)
• main.xml
– values
• strings.xml (textos – por defecto-)
– values-jp
• Strings.xml (textos – en japones-)
• src (codigo java)
• AndroidManifest.xml
19. Aplicación Android
Estructura .APK (ZIP) se compone de los siguientes
archivos:
• classes.dex
– Dalvik
– Magic: dexnXXX0
– Empaquetado de los .java compilados
• res (recursos)
• META-INF (firmas de la aplicacion)
• AndroidManifest.xml (compilado)
• resources.arsc (relaciona los nombres de los recursos con sus
identificadores - R.java-)
20. Aplicación Android
Tipos de Aplicación:
• Activity
Es el componente mas común. 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, mapas o tabs.
• Broadcast Receiver
Son componentes que escuchan eventos del generados por
otras aplicaciones (llegada de un sms, bateria baja,..)
• Service
Servicios que se ejecutan en un segundo plano.
• Content Provider
Son estructuras que permiten intercambian información entre
aplicaciones
31. Entorno Programación
Localización:
Locale Code Language / Country Location of strings.xml Location of flag.png
Default English / United res/values/ res/drawable/
Kingdom
de-rDE German / Germany res/values-de/ res/drawable-de-rDE/
fr-rFR French / France res/values-fr/ res/drawable-fr-rFR/
fr-rCA French / Canada res/values-fr/ res/drawable-fr-rCA/
en-rCA English / Canada (res/values/) res/drawable-en-rCA/
ja-rJP Japanese / Japan res/values-ja/ res/drawable-ja-rJP/
en-rUS English / United (res/values/) res/drawable-en-rUS/
States