que proveedores content contenido android android-contentresolver

proveedores - provider android



¿Cómo funciona getContentResolver()? (2)

Vi un curso sobre ContentProvider en Internet que demuestra cómo definir y usar un ContentProvider .

Estaba confundido acerca del uso del método llamado getContentResolver() . ¿Qué devuelve este método?

My ContentProvider no está instanciado y el código simplemente escribe que getContentProvider().query() .

No entiendo cómo funciona ContentProvider .


Devuelve Content Resolver.

¿Qué es la resolución de contenido?

Content Resolver es la instancia única y global en su aplicación que proporciona acceso a sus proveedores de contenido (y a los de otras aplicaciones). Content Resolver se comporta exactamente como su nombre lo indica: acepta solicitudes de clientes y resuelve estas solicitudes dirigiéndolas al proveedor de contenido con una autoridad distinta. Para hacer esto, Content Resolver almacena una asignación de autoridades a proveedores de contenido. Este diseño es importante, ya que permite un medio simple y seguro para acceder a los proveedores de contenido de otras aplicaciones.

Content Resolver incluye los métodos CRUD (crear, leer, actualizar, eliminar) correspondientes a los métodos abstractos (insertar, eliminar, consultar, actualizar) en la clase Proveedor de contenido. Content Resolver no conoce la implementación de los Proveedores de contenido con los que interactúa (ni necesita saber); a cada método se le pasa un URI que especifica el proveedor de contenido con el que interactuar.

¿Qué es el proveedor de contenido?

Mientras que Content Resolver proporciona una abstracción de los proveedores de contenido de la aplicación, los proveedores de contenido proporcionan una abstracción del origen de datos subyacente (es decir, una SQLite database ). Proporcionan mecanismos para definir la seguridad de los datos (es decir, al hacer cumplir los permisos de lectura / escritura) y ofrecen una interfaz estándar que conecta los datos en un proceso con el código que se ejecuta en otro proceso.

Los proveedores de contenido proporcionan una interfaz para publicar y consumir datos, basada en un modelo de direccionamiento URI simple que usa el content:// schema . Le permiten desacoplar las capas de su aplicación de las capas de datos subyacentes, haciendo que la fuente de datos de la aplicación sea agnóstica al abstraer la fuente de datos subyacente.

Fuente - androiddesignpatterns


getContentResolver () devuelve una instancia de ContentResolver para el paquete de su aplicación.

Pegándolo desde developer.android.com

Los proveedores de contenido administran el acceso a un conjunto estructurado de datos. Encapsulan los datos y proporcionan mecanismos para definir la seguridad de los datos. Los proveedores de contenido son la interfaz estándar que conecta los datos en un proceso con el código que se ejecuta en otro proceso.

Cuando desea acceder a los datos en un proveedor de contenido, utiliza el objeto ContentResolver en el contexto de su aplicación para comunicarse con el proveedor como cliente. El objeto ContentResolver se comunica con el objeto proveedor, una instancia de una clase que implementa ContentProvider. El objeto proveedor recibe solicitudes de datos de los clientes, realiza la acción solicitada y devuelve los resultados.

http://developer.android.com/guide/topics/providers/content-providers.html