Presentación para el módulo de Introducción a la Programación y Desarrollo con Android del Máster en Desarrollo de Videojuegos para Móviles de la IPECC
1. Enrique López-Mañas
Módulo 4: Creación y diseño de videojuegos móviles
Android: componentes (II)
En colaboración con la Con la participación de
Universidad de Alcalá Electronic Arts
2. Contenido
Componentes de una aplicación:
Actividades (Activities)
Intents
Intent Filters
Servicios
Content Providers
Broadcast Receivers
Introducción a la programación – Enrique López Mañas 2
3. Content Providers
Compartir datos entre aplicaciones
Contactos
Navegador
Registro de llamadas
Ajustes
Archivos multimedia
Funciona como una base de datos
Para hacer consultas se usa una URI
Introducción a la programación – Enrique López Mañas 3
4. Content Providers URI
STRING
CONSTANTE DESCRIPCION
CONSULTA
MediaStore.Images.Media.INTER Devuelve una lista con todas las
content://media/internal/images
NAL_CONTENT_URI imágenes internas del dispositivo
Devuelve una lista con todas las
MediaStore.Images.Media.EXTER
imágenes guardadas en el content://media/external/images
NAL_CONTENT_URI
dispositivo externo (SD Card)
CallLog.CONTENT_URI Devuelve la lista de llamadas content://call_log/calls
Devuelve una lista con
Browser.BOOKMARKS_URI marcadores guardados en el content://browser/bookmarks
navegador
Introducción a la programación – Enrique López Mañas 4
5. Cómo hacer una consulta
Necesitamos tres piezas de
información:
URI del provider
android.provider.CallLog.CONTENT_URI
Nombres de los campos que queremos
CallLog.Calls.NUMBER
Tipo de datos de los campos
_ID _COUNT NUMBER
44 3 212 55 1234
13 2 425 23 1231
53 5 543 56 1123
Introducción a la programación – Enrique López Mañas 5
6. Ejemplo Content Providers
Aplicación que muestra el registro de
llamadas
Uso de un ListView
Lectura de Content Providers
Introducción a la programación – Enrique López Mañas 6
7. Servicios
Componente que funciona sin
interactuar con el usuario
Reproductor de música
Log de coordenadas GPS
Realizar tareas costosas en otro hilo
Realizar tareas repetitivas
Puede usarse de dos maneras:
Inicio por libre
Unido a una Activity
Introducción a la programación – Enrique López Mañas 7
8. Servicio: Ciclo de Vida
Introducción a la programación – Enrique López Mañas 8
9. BroadCast Receivers
Sirve para interceptar Intents
Nativos: android.provider.Telephony.SMS_RECEIVE
Propios: com.tecnocom.intents.LOCATION_CHANGED
Utiliza Intent Filter para especificar a
qué tipo de Intent escuchar
Se puede registrar en el código o en el
Manifest
Introducción a la programación – Enrique López Mañas 9
10. Ejemplo: descarga de Archivo
Aplicación que descarga un archivo y
avisa cuando ha acabado
El servicio se debe comunicar con la
Activity (Broadcast Receiver)
Utilización de AsyncTask y
ProgressDialog
Introducción a la programación – Enrique López Mañas 10
11. Gracias por su atención
Contacto para dudas y sugerencias
Enrique López Mañas
eenriquelopez@gmail.com
@eenriquelopez
En colaboración con la Con la participación de
Universidad de Alcalá Electronic Arts