taller aplicaciones móviles - 2012 - 01
DESCRIPTION
taller app movilesTRANSCRIPT
![Page 1: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/1.jpg)
Apps MóvilesAndrés González
![Page 2: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/2.jpg)
Programa● Entorno de Desarrollo
○ Eclipse y SDK○ ADV○ Logcat○ Control del Emulador
● Android Manifest● Layouts
○ Tipos○ Snippets○ Menús
![Page 3: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/3.jpg)
Programa● Recursos
○ Strings○ Imágenes○ Íconos
● Actividades○ Descripción○ Ciclo de Vida
● Servicios○ Descipción○ Ciclo de Vida
![Page 4: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/4.jpg)
Programa● Intents
○ Para Actividades○ Para Servicios○ Filtros y Broadcast
● Preferencias○ SharedPreferences○ Preferencias en XML
● Bases de Datos● Mapas
○ Listeners○ Overlays
![Page 5: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/5.jpg)
Programa● Notificaciones● Mensajes
![Page 6: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/6.jpg)
IDE● Entorno de Trabajo para desarrollar las
aplicaciones● Facilita acciones repetitivas y la detección
de errores● Obtenible todo junto en un pack
proporcionado por Google
![Page 7: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/7.jpg)
IDE:ADV● Crea y modifíca máquinas virtuales● Incluye la posibilidad de agregar o quitar
características para probar aplicaciones en diferentes escenarios○ Soporte de teclado○ Camaras○ Tipo de procesador○ Acelerómetro
![Page 8: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/8.jpg)
IDE:ADV
![Page 9: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/9.jpg)
IDE:ADV:Nueva
![Page 10: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/10.jpg)
IDE:Logcat
![Page 11: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/11.jpg)
IDE:Control de Emulador
![Page 12: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/12.jpg)
AndroidManifest● Contiene información de la aplicación
○ Nombre de package○ Versión○ SDK○ Nombre de la aplicación○ Ícono○ Nodos○ Filtros para Intents○ Listeners○ Permisos
![Page 13: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/13.jpg)
AndroidManifest:Nodos
![Page 14: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/14.jpg)
Layouts● Tipos
○ LinearLayout■ Descripción■ Horizontal■ Vertical
○ Relativo■ Descripción
○ ScrollView■ Descripción
○ Tabs■ Descripción
![Page 15: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/15.jpg)
Layouts:LinearLayout● Por defecto usa todo el ancho del padre● Puede contener otros layouts● Admite propiedades como
○ Background○ Padding○ Margin○ Gravity○ Orientation
![Page 16: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/16.jpg)
Layouts:LinearLayout
![Page 17: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/17.jpg)
Layouts:RelativeLayout● Layout "fluido"● Acomoda todo en base a referencias● Permite los mismos atributos que el layout
lineal, menos la orientación● Utilizar prestando atención a diferentes
densidades de pantallas● Cambiar ID de snippets puede provocar
problemas
![Page 18: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/18.jpg)
Layouts:RelativeLayout
![Page 19: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/19.jpg)
Layouts:ScrollView● Utilizado cuando el contenido puede llegar a
ser más grande que la pantalla y así evitar que no pueda ser visto
● Puede ser horizontal o vertical● Acepta los mismos parámetros del layout
lineal
![Page 20: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/20.jpg)
Layouts:ScrollView
![Page 21: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/21.jpg)
Layouts:Tabs● Posibilita cambiar de tarea rápidamente● Necesitan de un Activity para cada tab● No son tan convenientes en pantallas poco
densas o pequeñas pues el espacio de los tabs queda "muerto"
● Organizan y agrupan información
![Page 22: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/22.jpg)
Layouts:Tabs
![Page 23: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/23.jpg)
Layouts:Snippets● Botones
○ Button○ ImageButton○ ImageView
● Etiquetas○ TextView
● Campos○ Spinners○ Switch○ EditText
![Page 24: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/24.jpg)
Layouts:Botones
![Page 25: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/25.jpg)
Layouts:Etiquetas
![Page 26: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/26.jpg)
Layouts:Campos
![Page 27: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/27.jpg)
Layouts:Menús:Contextual● Presentan acciones u opciones
dependiendo del "contexto" donde el cual son llamados
● Similares a lo que debería aparecer al hacer click derecho con un pc
● No debería tener demasiadas opciones● Puede ser reemplazado con el menú de
ActionBar
![Page 28: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/28.jpg)
Layouts:Menús:Contextual
![Page 29: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/29.jpg)
Layouts:Menús:ActionBar● Permite acceder a tareas recurrentes y varía
dependiendo del contexto● Puede agregarse algo de feedback, pero
hay que considerar el espacio reducido y dar prioridad a las acciones que pueda hacer el usuario
● Puede ser estilizado para estar más integrado con el estilo general de la aplicación
![Page 30: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/30.jpg)
Layouts:Menús:ActionBar
![Page 31: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/31.jpg)
Recursos● Strings
○ Únicas○ Array
● Imágenes○ Multiresolucion○ 9patch
● Íconos○ Tipos○ Convertidor de Imágenes
![Page 32: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/32.jpg)
Recursos:Strings:Únicas● Guardados en strings.xml● Permiten múltiples idiomas● Establecidas en pares de llave=valor
![Page 33: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/33.jpg)
Recursos:Strings:Array● Agrupan varias cadenas de texto en un solo
arreglo● Ideal para contener las opciones de spinners
![Page 34: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/34.jpg)
Recursos:Imágenes:MRes● La resolución necesaria se calcula en base
a pixeles dinámicos con la fórmula ○ RP = DP * ( DPI / 160 )
● Enriquecer o facilitar la experiencia del usuario
● Consistentes entre diferentes densidades de pantalla
● Considerar posibles orientaciones de pantalla que puedan afectar el despliegue de la imágen
![Page 35: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/35.jpg)
Recursos:Imágenes:MRes
LDensity - 120DPI
MDensity - 160DPI
HDentisy - 240DPI
XHDensity 320DPI
267DP
150DP
![Page 36: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/36.jpg)
Recursos:Imágenes:9Patch● Imágenes especiales que complementan
existentes● Permiten escalar botones simples o bordes
de imágenes para permitir un desempeño consistente entre densidades de pantallas
● Relativamente fáciles de utilizar
![Page 37: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/37.jpg)
Recursos:Imágenes:9Patch
![Page 38: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/38.jpg)
Recursos:Íconos● "Si hay que explicarlo, no sirve como ícono"● 7 Posibles usos
○ Interfaz principal○ ActionBar○ Tabs○ Menús o Dialogs○ Notificaciones○ Launcher○ Listas
● Deben ser proveídos en los tamaños apropiados para diferentes densidades
![Page 39: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/39.jpg)
Recursos:Íconos
![Page 40: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/40.jpg)
Actividades● Corresponden a las pantallas que
interactúan con el usuario● Agrupan múltiples acciones menores
relacionadas con el contexto de las aplicaciones
● Acceden a los recursos, instancian o destruyen clases
● Llaman a otras actividades o servicios utilizando Intents
![Page 41: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/41.jpg)
Actividades
![Page 42: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/42.jpg)
Actividades● Responde frente a eventos en base a
diferentes métodos que deben ser sobreescritos
● Crea, modifíca o remueve elementos del layout
● Puede tener métodos y subclases personalizados extendiendo la clase base Activity
![Page 43: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/43.jpg)
Actividades:Ciclo de Vida
![Page 44: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/44.jpg)
Actividades● Responde frente a eventos en base a
diferentes métodos que deben ser sobreescritos
● Crea, modifíca o remueve elementos del layout
● Puede tener métodos y subclases personalizados extendiendo la clase base Activity
![Page 45: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/45.jpg)
Servicios:Ciclo de Vida
![Page 46: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/46.jpg)
Servicios● No requieren de intervención del usuario● Útiles para realizar tareas en segundo plano● Pueden comunicarse con las aplicaciones y
sus actividades● Pueden existir una vez que se ha salido de
la aplicación y mientras el sistema no necesite recursos
![Page 47: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/47.jpg)
Servicios
![Page 48: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/48.jpg)
Servicios:Ciclo de Vida
● Context.startService()● onCreate()● onStart()● stopService(android.content.Intent) o stopSelf()● stopSelf(int)
![Page 49: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/49.jpg)
Intents● Intents
○ Para Actividades○ Para Servicios○ Filtros y Broadcast
● Preferencias○ SharedPreferences○ Preferencias en XML
● Bases de Datos● Mapas
○ Listeners○ Overlays
![Page 50: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/50.jpg)
Intents:Actividaddsa
![Page 51: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/51.jpg)
Intents:Actividaddsa
![Page 52: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/52.jpg)
Intents:Serviciosdsa
![Page 53: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/53.jpg)
Intents:Serviciosdsa
![Page 54: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/54.jpg)
Intents:Filtrosdsa
![Page 55: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/55.jpg)
Intents:Filtrosdsa
![Page 56: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/56.jpg)
Intents:Broadcastdsa
![Page 57: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/57.jpg)
Intents:Broadcastdsa
![Page 58: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/58.jpg)
Preferencias
![Page 59: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/59.jpg)
Preferencias
![Page 60: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/60.jpg)
Preferencias
![Page 61: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/61.jpg)
Preferencias
![Page 62: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/62.jpg)
Preferencias
![Page 63: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/63.jpg)
Bases de Datos
![Page 64: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/64.jpg)
Bases de Datos
![Page 65: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/65.jpg)
Mapas:Listener
![Page 66: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/66.jpg)
Mapas:Listener
![Page 67: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/67.jpg)
Mapas:Listener
![Page 68: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/68.jpg)
Mapas:Listener
![Page 69: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/69.jpg)
Mapas:Overlay
![Page 70: Taller Aplicaciones Móviles - 2012 - 01](https://reader033.vdocuments.pub/reader033/viewer/2022052913/563dbb1d550346aa9aaa6542/html5/thumbnails/70.jpg)
Mapas:Overlay