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
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
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
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
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
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
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
Servicio: Ciclo de Vida




Introducción a la programación – Enrique López Mañas           8
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
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
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

Android: Componentes (II)

  • 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 unaconsulta 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 deVida 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 deArchivo 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 suatención Contacto para dudas y sugerencias Enrique López Mañas [email protected] @eenriquelopez En colaboración con la Con la participación de Universidad de Alcalá Electronic Arts