DocumentsProvider 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í.
Clase base para un proveedor de documentos.
[Android.Runtime.Register("android/provider/DocumentsProvider", DoNotGenerateAcw=true)]
public abstract class DocumentsProvider : Android.Content.ContentProvider
[<Android.Runtime.Register("android/provider/DocumentsProvider", DoNotGenerateAcw=true)>]
type DocumentsProvider = class
inherit ContentProvider
- Herencia
- Atributos
Comentarios
Clase base para un proveedor de documentos. Un proveedor de documentos ofrece acceso de lectura y escritura a archivos duraderos, como archivos almacenados en un disco local o archivos en un servicio de almacenamiento en la nube. Para crear un proveedor de documentos, extienda esta clase, implemente los métodos abstractos y agréguelo al manifiesto de esta manera:
<manifest>
...
<application>
...
<provider
android:name="com.example.MyCloudProvider"
android:authorities="com.example.mycloudprovider"
android:exported="true"
android:grantUriPermissions="true"
android:permission="android.permission.MANAGE_DOCUMENTS"
android:enabled="@bool/isAtLeastKitKat">
<intent-filter>
<action android:name="android.content.action.DOCUMENTS_PROVIDER" />
</intent-filter>
</provider>
...
</application>
</manifest>
Al definir el proveedor, debe protegerlo con android.Manifest.permission#MANAGE_DOCUMENTS, que es un permiso que solo puede obtener el sistema. Las aplicaciones no pueden usar directamente un proveedor de documentos; deben pasar Intent#ACTION_OPEN_DOCUMENT por o Intent#ACTION_CREATE_DOCUMENT lo que requiere que un usuario navegue activamente y seleccione documentos. Cuando un usuario selecciona documentos a través de esa interfaz de usuario, el sistema emite permisos de URI estrechos a la aplicación solicitante.
<h3>Documentos</h3>
Un documento puede ser una secuencia que se puede abrir (con un tipo MIME específico) o un directorio que contenga documentos adicionales (con el Document#MIME_TYPE_DIR tipo MIME). Cada directorio representa la parte superior de un subárbol que contiene cero o más documentos, que pueden contener de forma recursiva aún más documentos y directorios.
Cada documento puede tener distintas funcionalidades, como se describe en Document#COLUMN_FLAGS. Por ejemplo, si un documento se puede representar como una miniatura, el proveedor puede establecer Document#FLAG_SUPPORTS_THUMBNAIL e implementar #openDocumentThumbnail(String, Point, CancellationSignal) para devolver esa miniatura.
Se hace referencia a cada documento de un proveedor de forma única por su Document#COLUMN_DOCUMENT_ID, que no debe cambiar una vez devuelto. Un único documento se puede incluir en varios directorios al responder a #queryChildDocuments(String, String[], String). Por ejemplo, un proveedor podría exponer una sola foto en varias ubicaciones: una vez en un directorio de ubicaciones geográficas y de nuevo en un directorio de fechas.
<h3>Roots</h3>
Todos los documentos se muestran a través de una o varias "raíces". Cada raíz representa la parte superior de un árbol de documentos que un usuario puede navegar. Por ejemplo, una raíz podría representar una cuenta o un dispositivo de almacenamiento físico. De forma similar a los documentos, cada raíz puede tener funcionalidades expresadas a través de Root#COLUMN_FLAGS.
Documentación de Java para android.provider.DocumentsProvider.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.
Constructores
| Nombre | Description |
|---|---|
| DocumentsProvider() | |
| DocumentsProvider(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. (Heredado de ContentProvider) |
| CallingAttributionTag |
Devuelve la etiqueta de atribución del autor de la llamada que inició la solicitud que se está procesando en el subproceso actual. (Heredado de ContentProvider) |
| CallingPackage |
Devuelve el nombre del paquete del autor de la llamada que inició la solicitud que se está procesando en el subproceso actual. (Heredado de ContentProvider) |
| CallingPackageUnchecked |
Devuelve el nombre del paquete del autor de la llamada que inició la solicitud que se está procesando en el subproceso actual. (Heredado de ContentProvider) |
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Context |
Recupera el contexto en el que se ejecuta este proveedor. (Heredado de ContentProvider) |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| IsTemporary |
Devuelve true si esta instancia es un proveedor de contenido temporal. (Heredado de ContentProvider) |
| JniIdentityHashCode |
Clase base para un proveedor de documentos. (Heredado de Object) |
| JniPeerMembers |
Clase base para un proveedor de documentos. |
| PeerReference |
Clase base para un proveedor de documentos. (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. (Heredado de ContentProvider) |
| 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. (Heredado de ContentProvider) |
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. (Heredado de ContentProvider) |
| 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. (Heredado de ContentProvider) |
| Call(String, String, String, Bundle) |
Llame a un método definido por el proveedor. (Heredado de ContentProvider) |
| Canonicalize(Uri) |
Implemente esto para admitir la canónicaización de URI que hacen referencia al proveedor de contenido. (Heredado de ContentProvider) |
| ClearCallingIdentity() |
Restablezca la identidad del IPC entrante en el subproceso actual. (Heredado de ContentProvider) |
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| CopyDocument(String, String) |
Copie el documento solicitado o un árbol de documentos. |
| CreateDocument(String, String, String) |
Cree un nuevo documento y devuelva su recién generado |
| CreateWebLinkIntent(String, Bundle) |
Crea un remitente de intención para un vínculo web, si el documento es vinculable a la web. |
| Delete(Uri, Bundle) |
Implemente esto para controlar las solicitudes para eliminar una o varias filas. (Heredado de ContentProvider) |
| Delete(Uri, String, String[]) |
La implementación la proporciona la clase primaria. |
| DeleteDocument(String) |
Elimine el documento solicitado. |
| Dispose() |
Clase base para un proveedor de documentos. (Heredado de Object) |
| Dispose(Boolean) |
Clase base para un proveedor de documentos. (Heredado de Object) |
| Dump(FileDescriptor, PrintWriter, String[]) |
Imprima el estado del proveedor en la secuencia especificada. (Heredado de ContentProvider) |
| DumpAsync(FileDescriptor, PrintWriter, String[]) |
Clase base para un proveedor de documentos. (Heredado de ContentProvider) |
| EjectRoot(String) |
Expulsa la raíz. |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| FindDocumentPath(String, String) |
Busca la ruta de acceso canónica del documento solicitado. |
| GetDocumentMetadata(String) |
Devuelve los metadatos asociados al documento. |
| GetDocumentStreamTypes(String, String) |
Devuelve una lista de tipos MIME que se pueden transmitir mediante secuencias que coinciden con el filtro, que se puede pasar a |
| GetDocumentType(String) |
Devuelve el tipo MIME concreto del documento solicitado. |
| GetHashCode() |
Devuelve un valor de código hash del 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. (Heredado de ContentProvider) |
| 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. (Heredado de ContentProvider) |
| GetType(Uri) |
La implementación la proporciona la clase primaria. |
| GetTypeAnonymous(Uri) |
Una versión sin restricciones de getType, que no revela información confidencial |
| Insert(Uri, ContentValues, Bundle) |
Implemente esto para controlar las solicitudes para insertar una nueva fila. (Heredado de ContentProvider) |
| Insert(Uri, ContentValues) |
La implementación la proporciona la clase primaria. |
| IsChildDocument(String, String) |
Pruebe si un documento es descendiente (secundario, nieto, etc.) del elemento primario especificado. |
| 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) |
| MoveDocument(String, String, String) |
Mueva el documento solicitado o un árbol de documentos. |
| 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. (Heredado de ContentProvider) |
| OnCreate() |
Implemente esta opción para inicializar el proveedor de contenido al iniciarse. (Heredado de ContentProvider) |
| OnLowMemory() |
Para agregar Este método siempre se llama en el subproceso principal de la aplicación y no debe realizar operaciones largas. (Heredado de ContentProvider) |
| 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. (Heredado de ContentProvider) |
| OpenAssetFile(Uri, String, CancellationSignal) |
La implementación la proporciona la clase primaria. |
| OpenAssetFile(Uri, String) |
La implementación la proporciona la clase primaria. |
| OpenDocument(String, String, CancellationSignal) |
Abra y devuelva el documento solicitado. |
| OpenDocumentThumbnail(String, Point, CancellationSignal) |
Abra y devuelva una miniatura del documento solicitado. |
| OpenFile(Uri, String, CancellationSignal) |
La implementación la proporciona la clase primaria. |
| OpenFile(Uri, String) |
La implementación la proporciona la clase primaria. |
| 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) |
La implementación la proporciona la clase primaria. |
| OpenTypedAssetFile(Uri, String, Bundle) |
La implementación la proporciona la clase primaria. |
| OpenTypedDocument(String, String, Bundle, CancellationSignal) |
Abra y devuelva el documento en un formato que coincida con el filtro de tipo MIME especificado. |
| Query(Uri, String[], Bundle, CancellationSignal) |
La implementación la proporciona la clase primaria. |
| Query(Uri, String[], String, String[], String, CancellationSignal) |
Implemente esto para controlar las solicitudes de consulta de los clientes con compatibilidad con la cancelación. (Heredado de ContentProvider) |
| Query(Uri, String[], String, String[], String) |
La implementación la proporciona la clase primaria. |
| QueryChildDocuments(String, String[], Bundle) |
Invalide este método para devolver los documentos secundarios contenidos en el directorio solicitado. |
| QueryChildDocuments(String, String[], String) |
Devuelve los documentos secundarios incluidos en el directorio solicitado. |
| QueryDocument(String, String[]) |
Devuelve metadatos para el único documento solicitado. |
| QueryRecentDocuments(String, String[], Bundle, CancellationSignal) |
Devuelve documentos modificados recientemente en la raíz solicitada. |
| QueryRecentDocuments(String, String[]) |
Devuelve documentos modificados recientemente en la raíz solicitada. |
| QueryRoots(String[]) |
Devuelve todas las raíces proporcionadas actualmente. |
| QuerySearchDocuments(String, String, String[]) |
Devuelve documentos que coinciden con la consulta especificada en la raíz solicitada. |
| QuerySearchDocuments(String, String[], Bundle) |
Devuelve documentos que coinciden con la consulta especificada en la raíz solicitada. |
| Refresh(Uri, Bundle, CancellationSignal) |
Implemente esto para admitir la actualización del contenido identificado por |
| RemoveDocument(String, String) |
Quita el documento solicitado o un árbol de documentos. |
| RenameDocument(String, String) |
Cambie el nombre de un documento existente. |
| 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 |
| RevokeDocumentPermission(String) |
Revoque las concesiones de permisos activos para el objeto especificado |
| 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. (Heredado de ContentProvider) |
| SetReadPermission(String) |
Clase base para un proveedor de documentos. (Heredado de ContentProvider) |
| SetWritePermission(String) |
Clase base para un proveedor de documentos. (Heredado de ContentProvider) |
| Shutdown() |
Implemente esta opción para apagar la instancia de ContentProvider. (Heredado de ContentProvider) |
| ToArray<T>() |
Clase base para un proveedor de documentos. (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() |
Clase base para un proveedor de documentos. (Heredado de Object) |
| Update(Uri, ContentValues, Bundle) |
Implemente esto para controlar las solicitudes para actualizar una o varias filas. (Heredado de ContentProvider) |
| Update(Uri, ContentValues, String, String[]) |
La implementación la proporciona la clase primaria. |
| Wait() |
Hace que el subproceso actual espere hasta que se despierta, 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() |
Clase base para un proveedor de documentos. (Heredado de Object) |
| IJavaPeerable.DisposeUnlessReferenced() |
Clase base para un proveedor de documentos. (Heredado de Object) |
| IJavaPeerable.Finalized() |
Clase base para un proveedor de documentos. (Heredado de Object) |
| IJavaPeerable.JniManagedPeerState |
Clase base para un proveedor de documentos. (Heredado de Object) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Clase base para un proveedor de documentos. (Heredado de Object) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Clase base para un proveedor de documentos. (Heredado de Object) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Clase base para un proveedor de documentos. (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) |
Clase base para un proveedor de documentos. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |