ContentProvider Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones.
[Android.Runtime.Register("android/content/ContentProvider", DoNotGenerateAcw=true)]
public abstract class ContentProvider : Java.Lang.Object, Android.Content.IComponentCallbacks2, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/content/ContentProvider", DoNotGenerateAcw=true)>]
type ContentProvider = class
inherit Object
interface IComponentCallbacks
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface IComponentCallbacks2
- Herencia
- Derivado
- Atributos
- Implementaciones
Comentarios
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. Encapsulan los datos y los proporcionan a las aplicaciones a través de la interfaz única ContentResolver . Solo se requiere un proveedor de contenido si necesita compartir datos entre varias aplicaciones. Por ejemplo, varias aplicaciones usan los datos de contactos y deben almacenarse en un proveedor de contenido. Si no necesita compartir datos entre varias aplicaciones, puede usar una base de datos directamente a través de android.database.sqlite.SQLiteDatabase.
Cuando se realiza una solicitud a través de un ContentResolver sistema inspecciona la autoridad del URI especificado y pasa la solicitud al proveedor de contenido registrado con la autoridad. El proveedor de contenido puede interpretar el resto del URI, pero quiere. La UriMatcher clase es útil para analizar los URI.
Los métodos principales que se deben implementar son: <ul><li>#onCreate, al que se llama para inicializar el proveedor< o li li>#query><, que devuelve datos al autor de la llamada< o li li#insert>><, que inserta nuevos datos en el proveedor< de contenido/li li<#update>>, que actualiza los datos existentes en el proveedor< de contenido/li><li>#delete, que elimina los datos del proveedor< de contenido/li<>li li.>#getType que devuelve el tipo de datos MIME en el proveedor< de contenido/li></ul>
Los métodos de acceso a datos (como #insert y #update) se pueden llamar desde muchos subprocesos a la vez y deben ser seguros para subprocesos. Otros métodos (como #onCreate) solo se llaman desde el subproceso principal de la aplicación y deben evitar realizar operaciones largas. Consulte las descripciones del método para conocer su comportamiento esperado del subproceso.
Las solicitudes a ContentResolver se reenvieron automáticamente a la instancia de ContentProvider adecuada, por lo que las subclases no tienen que preocuparse por los detalles de las llamadas entre procesos.
<div class="special reference"><h3>Developer Guides</h3>
Para obtener más información sobre el uso de proveedores de contenido, lea la guía para desarrolladores de proveedores de contenido .
</div>
Java documentación para android.content.ContentProvider.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Constructores
| Nombre | Description |
|---|---|
| ContentProvider() |
Construya una instancia de ContentProvider. |
| ContentProvider(IntPtr, JniHandleOwnership) |
Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución. |
Propiedades
| Nombre | Description |
|---|---|
| CallingAttributionSource |
Obtiene el origen de atribución de la aplicación que llama. |
| CallingAttributionTag |
Devuelve la etiqueta de atribución del autor de la llamada que inició la solicitud que se está procesando en el subproceso actual. |
| CallingPackage |
Devuelve el nombre del paquete del autor de la llamada que inició la solicitud que se está procesando en el subproceso actual. |
| CallingPackageUnchecked |
Devuelve el nombre del paquete del autor de la llamada que inició la solicitud que se está procesando en el subproceso actual. |
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Context |
Recupera el contexto en el que se ejecuta este proveedor. |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| IsTemporary |
Devuelve true si esta instancia es un proveedor de contenido temporal. |
| JniIdentityHashCode |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| JniPeerMembers |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. |
| PeerReference |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| ReadPermission |
Obsoletos.
Devuelve el nombre del permiso necesario para el acceso de solo lectura a este proveedor de contenido. -o bien- Cambie el permiso necesario para leer datos del proveedor de contenido. |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
| WritePermission |
Obsoletos.
Devuelve el nombre del permiso necesario para el acceso de lectura y escritura a este proveedor de contenido. -o bien- Cambie el permiso necesario para leer y escribir datos en el proveedor de contenido. |
Métodos
| Nombre | Description |
|---|---|
| ApplyBatch(IList<ContentProviderOperation>) |
Invalide esta opción para controlar las solicitudes para realizar un lote de operaciones, o la implementación predeterminada iterará en las operaciones y llamará a |
| ApplyBatch(String, IList<ContentProviderOperation>) |
Invalide esta opción para controlar las solicitudes para realizar un lote de operaciones, o la implementación predeterminada iterará en las operaciones y llamará a |
| AttachInfo(Context, ProviderInfo) |
Después de crear instancias, se llama a para informar al proveedor de contenido sobre sí mismo. |
| BulkInsert(Uri, ContentValues[]) |
Invalide esta opción para controlar las solicitudes para insertar un conjunto de filas nuevas o la implementación predeterminada iterará los valores y llamará |
| Call(String, String, Bundle) |
Llame a un método definido por el proveedor. |
| Call(String, String, String, Bundle) |
Llame a un método definido por el proveedor. |
| Canonicalize(Uri) |
Implemente esto para admitir la canónicaización de URI que hacen referencia al proveedor de contenido. |
| ClearCallingIdentity() |
Restablezca la identidad del IPC entrante en el subproceso actual. |
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| Delete(Uri, Bundle) |
Implemente esto para controlar las solicitudes para eliminar una o varias filas. |
| Delete(Uri, String, String[]) |
Implemente esto para controlar las solicitudes para eliminar una o varias filas. |
| Dispose() |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| Dispose(Boolean) |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| Dump(FileDescriptor, PrintWriter, String[]) |
Imprima el estado del proveedor en la secuencia especificada. |
| DumpAsync(FileDescriptor, PrintWriter, String[]) |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| GetPathPermissions() |
Devuelve los permisos basados en la ruta de acceso necesarios para el acceso de lectura o escritura a este proveedor de contenido. |
| GetStreamTypes(Uri, String) |
Llamado por un cliente para determinar los tipos de flujos de datos que admite este proveedor de contenido para el URI especificado. |
| GetType(Uri) |
Implemente esto para controlar las solicitudes del tipo MIME de los datos en el URI especificado. |
| GetTypeAnonymous(Uri) |
Implemente esto para controlar las solicitudes para el tipo mime de URI, que no necesita revelar ninguna información interna que se debe proteger con ningún permiso. |
| Insert(Uri, ContentValues, Bundle) |
Implemente esto para controlar las solicitudes para insertar una nueva fila. |
| Insert(Uri, ContentValues) |
Implemente esto para controlar las solicitudes para insertar una nueva fila. |
| JavaFinalize() |
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| OnCallingPackageChanged() |
Se llama cada vez que el valor de |
| OnConfigurationChanged(Configuration) |
Para agregar Este método siempre se llama en el subproceso principal de la aplicación y no debe realizar operaciones largas. |
| OnCreate() |
Implemente esta opción para inicializar el proveedor de contenido al iniciarse. |
| OnLowMemory() |
Para agregar Este método siempre se llama en el subproceso principal de la aplicación y no debe realizar operaciones largas. |
| OnTrimMemory(TrimMemory) |
Se llama cuando el sistema operativo ha determinado que es un buen momento para que un proceso recorte la memoria innecesaria de su proceso. |
| OpenAssetFile(Uri, String, CancellationSignal) |
Esto es como |
| OpenAssetFile(Uri, String) |
Esto es como |
| OpenFile(Uri, String, CancellationSignal) |
Invalide esta opción para controlar las solicitudes para abrir un blob de archivos. |
| OpenFile(Uri, String) |
Invalide esta opción para controlar las solicitudes para abrir un blob de archivos. |
| OpenFileHelper(Uri, String) |
Comodidad para las subclases que desean implementar |
| OpenPipeHelper(Uri, String, Bundle, Object, ContentProvider+IPipeDataWriter) |
Una función auxiliar para implementar |
| OpenTypedAssetFile(Uri, String, Bundle, CancellationSignal) |
Llamado por un cliente para abrir una secuencia de solo lectura que contiene datos de un tipo MIME determinado. |
| OpenTypedAssetFile(Uri, String, Bundle) |
Llamado por un cliente para abrir una secuencia de solo lectura que contiene datos de un tipo MIME determinado. |
| Query(Uri, String[], Bundle, CancellationSignal) |
Implemente esto para controlar las solicitudes de consulta en las que los argumentos se empaquetan en un |
| Query(Uri, String[], String, String[], String, CancellationSignal) |
Implemente esto para controlar las solicitudes de consulta de los clientes con compatibilidad con la cancelación. |
| Query(Uri, String[], String, String[], String) |
Implemente esto para controlar las solicitudes de consulta de los clientes. |
| Refresh(Uri, Bundle, CancellationSignal) |
Implemente esto para admitir la actualización del contenido identificado por |
| RequireContext() |
Recupera un contexto que no acepta valores NULL en el que se ejecuta este proveedor; se pretende llamar a él después |
| RestoreCallingIdentity(ContentProvider+CallingIdentity) |
Restaure la identidad del IPC entrante en el subproceso actual a una identidad previamente devuelta por |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPathPermissions(PathPermission[]) |
Cambie el permiso basado en la ruta de acceso necesario para leer o escribir datos en el proveedor de contenido. |
| SetReadPermission(String) |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. |
| SetWritePermission(String) |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. |
| Shutdown() |
Implemente esta opción para apagar la instancia de ContentProvider. |
| ToArray<T>() |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| ToString() |
Devuelve una representación de cadena del objeto . (Heredado de Object) |
| Uncanonicalize(Uri) |
Quite la canónica de los URI canónicos devueltos anteriormente por |
| UnregisterFromRuntime() |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| Update(Uri, ContentValues, Bundle) |
Implemente esto para controlar las solicitudes para actualizar una o varias filas. |
| Update(Uri, ContentValues, String, String[]) |
Implemente esto para controlar las solicitudes para actualizar una o varias filas. |
| Wait() |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em> o <em>interrumpido</em>.<>< (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| IJavaPeerable.DisposeUnlessReferenced() |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| IJavaPeerable.Finalized() |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| IJavaPeerable.JniManagedPeerState |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. (Heredado de Object) |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
Los proveedores de contenido son uno de los principales bloques de creación de aplicaciones Android, lo que proporciona contenido a las aplicaciones. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |