0% encontró este documento útil (0 votos)
23 vistas4 páginas

Qué es un Content Provider en Android

Un Content Provider permite compartir datos entre aplicaciones Android de forma segura al encapsular los datos y proveer mecanismos para definir el acceso. Los Content Providers ya existentes permiten acceder a datos como marcadores del navegador, registro de llamadas, preferencias del dispositivo y recursos multimedia. Los desarrolladores también pueden crear Content Providers personalizados para compartir datos de bases de datos entre aplicaciones.

Cargado por

Fran May
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
23 vistas4 páginas

Qué es un Content Provider en Android

Un Content Provider permite compartir datos entre aplicaciones Android de forma segura al encapsular los datos y proveer mecanismos para definir el acceso. Los Content Providers ya existentes permiten acceder a datos como marcadores del navegador, registro de llamadas, preferencias del dispositivo y recursos multimedia. Los desarrolladores también pueden crear Content Providers personalizados para compartir datos de bases de datos entre aplicaciones.

Cargado por

Fran May
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Un Content Provider es un mecanismo proporcionado por la plataforma

Android para permitir compartir información entre diferentes aplicaciones, ya que


cada App mantiene un acceso privado a sus datos.

La información puede residir en diferentes formatos, como un fichero o una bbdd


SQLite.

Android nos proporciona una serie de Content Providers ya existentes, que nos
permiten acceder a diferentes datos de nuestro dispositivo:

 Browser: Posibilita la lectura o modificación de bookmarks (marcadores),


historial de navegación o búsquedas realizadas.

 CallLog: Permite el acceso al registro de llamadas, para tanto visualizar el


historial como poder modificarlo (llamadas entrantes y salientes).

 Settings: Proporciona acceso a las preferencias del dispositivo.

 MediaStore: Acceso a los recursos multimedia del dispositivo (imágenes,


audio, vídeo etc.).

 Contacts: Permite el acceso a la lista de contactos, tanto para leer,


modificar o guardar nuevos contactos.

Android nos da la posibilidad de crear Content Providers personalizados. Uno de los


ejemplos más habituales es compartir el acceso a la información contenida dentro
de una base de datos SQLite, implementada dentro de una aplicación, ya que ésta
inicialmente es privada y sólo accesible por la propia aplicación.

1
Características

 Los proveedores de contenido pueden ayudar a una aplicación a gestionar el


acceso a los datos que esa u otras aplicaciones almacenan y proporcionar
una forma de compartir datos con otras aplicaciones.

 Encapsulan los datos y proporcionan mecanismos para definir su seguridad.

 Los proveedores de contenido son la interfaz estándar que conecta datos en


un proceso con código que se ejecuta en otro proceso.

 La implementación de un proveedor de contenido tiene muchas ventajas. Lo


más importante es que puedes configurar un proveedor de contenido para
permitir que otras aplicaciones accedan de forma segura a los datos de tu
aplicación y los modifiquen, tal y como se ilustra en la siguiente figura.

Usa proveedores de contenido si tienes pensado compartir datos. Si no tienes


intenciones de compartir datos, puedes usarlos porque proporcionan una buena
abstracción, pero no es necesario que lo hagas.

Esta abstracción te permite realizar modificaciones en la implementación de


almacenamiento de datos de tu aplicación sin afectar a otras que dependen del
acceso a tus datos. En esta situación, solo tu proveedor de contenido se ve
afectado, y no las aplicaciones que acceden a él. 

2
Ciclo de vida

Describimos los elementos que intervienen en el ciclo de vida de un Content


Provider que podemos resumir en las siguientes tres etapas:

Se inicializa por primera vez cuando el método onCreate()  es invocado (es


activado por un ContentResolver). Este método trabaja en el UI Thread o hilo
principal de ejecución de la aplicación, por lo que no se recomienda realizar tareas
costosas. Sirve principalmente para instanciar la base de datos utilizada en el
Content Provider.

Una vez inicializado, se pueden realizar tareas de insertar (insert), actualizar


(update), borrar (delete), consultar(query), y una vez modificados los datos, las
acciones de apertura y cierre se realizarán de manera automática. En el supuesto
de realizar tareas de lectura, será necesario mantener la conexión a los datos
abierta para no recibir el contenido del recolector de basura.

Por último, una vez la aplicación cliente que consume los datos del Content
Provider no se encuentra en memoria, pasará a un estado de destrucción.

3
4

También podría gustarte