DocumentsProvider Classe

Definição

Classe base para um provedor 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
Herança
DocumentsProvider
Atributos

Comentários

Classe base para um provedor de documentos. Um provedor de documentos oferece acesso de leitura e gravação a arquivos duráveis, como arquivos armazenados em um disco local ou arquivos em um serviço de armazenamento em nuvem. Para criar um provedor de documentos, estenda essa classe, implemente os métodos abstratos e adicione-o ao manifesto desta forma:

&lt;manifest&gt;
               ...
               &lt;application&gt;
                   ...
                   &lt;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"&gt;
                       &lt;intent-filter&gt;
                           &lt;action android:name="android.content.action.DOCUMENTS_PROVIDER" /&gt;
                       &lt;/intent-filter&gt;
                   &lt;/provider&gt;
                   ...
               &lt;/application&gt;
            &lt;/manifest&gt;

Ao definir seu provedor, você deve protegê-lo, android.Manifest.permission#MANAGE_DOCUMENTSque é uma permissão que somente o sistema pode obter. Os aplicativos não podem usar um provedor de documentos diretamente; eles devem passar Intent#ACTION_OPEN_DOCUMENT ou Intent#ACTION_CREATE_DOCUMENT que exigem que um usuário navegue ativamente e selecione documentos. Quando um usuário seleciona documentos por meio dessa interface do usuário, o sistema emite permissões de URI estreitas concedidas ao aplicativo solicitante.

<Documentos> h3</h3>

Um documento pode ser um fluxo aberta (com um tipo MIME específico) ou um diretório que contém documentos adicionais (com o Document#MIME_TYPE_DIR tipo MIME). Cada diretório representa a parte superior de uma subárvore que contém zero ou mais documentos, que podem conter ainda mais documentos e diretórios recursivamente.

Cada documento pode ter recursos diferentes, conforme descrito por Document#COLUMN_FLAGS. Por exemplo, se um documento puder ser representado como uma miniatura, seu provedor poderá definir Document#FLAG_SUPPORTS_THUMBNAIL e implementar #openDocumentThumbnail(String, Point, CancellationSignal) para retornar essa miniatura.

Cada documento em um provedor é referenciado exclusivamente por seu Document#COLUMN_DOCUMENT_ID, que não deve ser alterado uma vez retornado. Um único documento pode ser incluído em vários diretórios ao responder a #queryChildDocuments(String, String[], String). Por exemplo, um provedor pode exibir uma única foto em vários locais: uma vez em um diretório de localizações geográficas e novamente em um diretório de datas.

<raízes> h3</h3>

Todos os documentos são exibidos por meio de uma ou mais "raízes". Cada raiz representa a parte superior de uma árvore de documentos que um usuário pode navegar. Por exemplo, uma raiz pode representar uma conta ou um dispositivo de armazenamento físico. Semelhante aos documentos, cada raiz pode ter recursos expressos por meio Root#COLUMN_FLAGSde .

Documentação Java para android.provider.DocumentsProvider.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Construtores

Nome Description
DocumentsProvider()
DocumentsProvider(IntPtr, JniHandleOwnership)

Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo runtime.

Propriedades

Nome Description
CallingAttributionSource

Obtém a origem da atribuição do aplicativo de chamada.

(Herdado de ContentProvider)
CallingAttributionTag

Retorne a marca de atribuição do chamador que iniciou a solicitação que está sendo processada no thread atual.

(Herdado de ContentProvider)
CallingPackage

Retorne o nome do pacote do chamador que iniciou a solicitação que está sendo processada no thread atual.

(Herdado de ContentProvider)
CallingPackageUnchecked

Retorne o nome do pacote do chamador que iniciou a solicitação que está sendo processada no thread atual.

(Herdado de ContentProvider)
Class

Retorna a classe de tempo de execução deste Object.

(Herdado de Object)
Context

Recupera o contexto em que este provedor está em execução.

(Herdado de ContentProvider)
Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
IsTemporary

Retornará true se essa instância for um provedor de conteúdo temporário.

(Herdado de ContentProvider)
JniIdentityHashCode

Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade.

(Herdado de Object)
JniPeerMembers

Classe base para um provedor de documentos.

PeerReference

Obtém a referência de objeto JNI para este par Java.

(Herdado de Object)
ReadPermission
Obsoleto.

Retorne o nome da permissão necessária para acesso somente leitura a esse provedor de conteúdo. -ou- Altere a permissão necessária para ler dados do provedor de conteúdo.

(Herdado de ContentProvider)
ThresholdClass

Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

ThresholdType

Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

WritePermission
Obsoleto.

Retorne o nome da permissão necessária para acesso de leitura/gravação a esse provedor de conteúdo. -ou- Altere a permissão necessária para ler e gravar dados no provedor de conteúdo.

(Herdado de ContentProvider)

Métodos

Nome Description
ApplyBatch(IList<ContentProviderOperation>)

Substitua isso para lidar com solicitações para executar um lote de operações ou a implementação padrão iterará sobre as operações e chamará ContentProviderOperation#apply cada uma delas.

(Herdado de ContentProvider)
ApplyBatch(String, IList<ContentProviderOperation>)

Substitua isso para lidar com solicitações para executar um lote de operações ou a implementação padrão iterará sobre as operações e chamará ContentProviderOperation#apply cada uma delas.

(Herdado de ContentProvider)
AttachInfo(Context, ProviderInfo)

Depois de instanciado, isso é chamado para informar o provedor de conteúdo sobre si mesmo.

(Herdado de ContentProvider)
BulkInsert(Uri, ContentValues[])

Substitua isso para manipular solicitações para inserir um conjunto de novas linhas ou a implementação padrão iterará sobre os valores e chamará #insert cada uma delas.

(Herdado de ContentProvider)
Call(String, String, Bundle)

Chame um método definido pelo provedor.

(Herdado de ContentProvider)
Call(String, String, String, Bundle)

Chame um método definido pelo provedor.

(Herdado de ContentProvider)
Canonicalize(Uri)

Implemente isso para dar suporte à canonicalização de URIs que se referem ao seu provedor de conteúdo.

(Herdado de ContentProvider)
ClearCallingIdentity()

Redefina a identidade do IPC de entrada no thread atual.

(Herdado de ContentProvider)
Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
CopyDocument(String, String)

Copie o documento solicitado ou uma árvore de documentos.

CreateDocument(String, String, String)

Crie um novo documento e retorne seu recém-gerado Document#COLUMN_DOCUMENT_ID.

CreateWebLinkIntent(String, Bundle)

Cria um remetente de intenção para um link da Web, se o documento for vinculável à Web.

Delete(Uri, Bundle)

Implemente isso para lidar com solicitações para excluir uma ou mais linhas.

(Herdado de ContentProvider)
Delete(Uri, String, String[])

A implementação é fornecida pela classe pai.

DeleteDocument(String)

Exclua o documento solicitado.

Dispose()

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
Dispose(Boolean)

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
Dump(FileDescriptor, PrintWriter, String[])

Imprima o estado do Provedor no fluxo fornecido.

(Herdado de ContentProvider)
DumpAsync(FileDescriptor, PrintWriter, String[])

Imprima o estado do Provedor no fluxo fornecido. Isso será invocado se você executar "adb shell dumpsys activity provider <provider_component_name>".

(Herdado de ContentProvider)
EjectRoot(String)

Ejeta a raiz.

Equals(Object)

Indica se algum outro objeto é "igual a" este.

(Herdado de Object)
FindDocumentPath(String, String)

Localiza o caminho canônico do documento solicitado.

GetDocumentMetadata(String)

Retorna metadados associados ao documento.

GetDocumentStreamTypes(String, String)

Retornar uma lista de tipos MIME que correspondem ao filtro, que pode ser passado para #openTypedDocument(String, String, Bundle, CancellationSignal).

GetDocumentType(String)

Retornar o tipo MIME concreto do documento solicitado.

GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
GetPathPermissions()

Retorne as permissões baseadas em caminho necessárias para acesso de leitura e/ou gravação a esse provedor de conteúdo.

(Herdado de ContentProvider)
GetStreamTypes(Uri, String)

Chamado por um cliente para determinar os tipos de fluxos de dados que esse provedor de conteúdo dá suporte para o URI fornecido.

(Herdado de ContentProvider)
GetType(Uri)

A implementação é fornecida pela classe pai.

GetTypeAnonymous(Uri)

Uma versão irrestrita do getType, que não revela informações confidenciais

Insert(Uri, ContentValues, Bundle)

Implemente isso para lidar com solicitações para inserir uma nova linha.

(Herdado de ContentProvider)
Insert(Uri, ContentValues)

A implementação é fornecida pela classe pai.

IsChildDocument(String, String)

Teste se um documento é descendente (filho, neto etc) do pai determinado.

JavaFinalize()

Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto.

(Herdado de Object)
MoveDocument(String, String, String)

Mova o documento solicitado ou uma árvore de documentos.

Notify()

Ativa um único thread que está aguardando no monitor desse objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
OnCallingPackageChanged()

Chamado sempre que o valor das #getCallingPackage() alterações, dando ao provedor a oportunidade de invalidar qualquer cache relacionado à segurança que ele possa estar executando.

(Herdado de ContentProvider)
OnConfigurationChanged(Configuration)

Chamado pelo sistema quando a configuração do dispositivo é alterada enquanto o componente está em execução. Observe que, ao contrário das atividades, outros componentes nunca são reiniciados quando uma configuração é alterada: eles sempre devem lidar com os resultados da alteração, como a recuperação de recursos. No momento em que essa função tiver sido chamada, seu objeto Resources terá sido atualizado para retornar valores de recurso correspondentes à nova configuração. Para obter mais informações, leia Como lidar com alterações de runtime. Esse método é sempre chamado no thread principal do aplicativo e não deve executar operações longas. A implementação do provedor de conteúdo padrão não faz nada. Substitua esse método para tomar as medidas apropriadas. (Os provedores de conteúdo geralmente não se importam com coisas como orientação de tela, mas talvez queiram saber sobre as alterações de localidade.) Configuração de newConfig de parâmetros: a nova configuração do dispositivo. Esse valor não pode ser nulo.

(Herdado de ContentProvider)
OnCreate()

Implemente isso para inicializar seu provedor de conteúdo na inicialização.

(Herdado de ContentProvider)
OnLowMemory()

Isso é chamado quando o sistema geral está com pouca memória e os processos em execução ativamente devem cortar o uso da memória. Embora o ponto exato em que isso será chamado não seja definido, geralmente acontecerá quando todo o processo em segundo plano tiver sido morto. Ou seja, antes de chegar ao ponto de matar processos que hospedam o serviço e a interface do usuário em primeiro plano, gostaríamos de evitar matar. Esse método é sempre chamado no thread principal do aplicativo e não deve executar operações longas. A implementação do provedor de conteúdo padrão não faz nada. As subclasses podem substituir esse método para tomar as medidas apropriadas.

(Herdado de ContentProvider)
OnTrimMemory(TrimMemory)

Chamado quando o sistema operacional determinou que é um bom momento para um processo cortar a memória desnecessária de seu processo.

(Herdado de ContentProvider)
OpenAssetFile(Uri, String, CancellationSignal)

A implementação é fornecida pela classe pai.

OpenAssetFile(Uri, String)

A implementação é fornecida pela classe pai.

OpenDocument(String, String, CancellationSignal)

Abra e retorne o documento solicitado.

OpenDocumentThumbnail(String, Point, CancellationSignal)

Abra e retorne uma miniatura do documento solicitado.

OpenFile(Uri, String, CancellationSignal)

A implementação é fornecida pela classe pai.

OpenFile(Uri, String)

A implementação é fornecida pela classe pai.

OpenFileHelper(Uri, String)

Conveniência para subclasses que desejam implementar #openFile pesquisando uma coluna chamada "_data" no URI fornecido.

(Herdado de ContentProvider)
OpenPipeHelper(Uri, String, Bundle, Object, ContentProvider+IPipeDataWriter)

Uma função auxiliar para implementação #openTypedAssetFile, para criar um pipe de dados e um thread em segundo plano, permitindo que você transmita dados gerados de volta para o cliente.

(Herdado de ContentProvider)
OpenTypedAssetFile(Uri, String, Bundle, CancellationSignal)

A implementação é fornecida pela classe pai.

OpenTypedAssetFile(Uri, String, Bundle)

A implementação é fornecida pela classe pai.

OpenTypedDocument(String, String, Bundle, CancellationSignal)

Abra e retorne o documento em um formato que corresponda ao filtro de tipo MIME especificado.

Query(Uri, String[], Bundle, CancellationSignal)

A implementação é fornecida pela classe pai.

Query(Uri, String[], String, String[], String, CancellationSignal)

Implemente isso para lidar com solicitações de consulta de clientes com suporte para cancelamento.

(Herdado de ContentProvider)
Query(Uri, String[], String, String[], String)

A implementação é fornecida pela classe pai.

QueryChildDocuments(String, String[], Bundle)

Substitua esse método para retornar os documentos filhos contidos no diretório solicitado.

QueryChildDocuments(String, String[], String)

Retorne os documentos filhos contidos no diretório solicitado.

QueryDocument(String, String[])

Retornar metadados para o único documento solicitado.

QueryRecentDocuments(String, String[], Bundle, CancellationSignal)

Retornar documentos modificados recentemente na raiz solicitada.

QueryRecentDocuments(String, String[])

Retornar documentos modificados recentemente na raiz solicitada.

QueryRoots(String[])

Retornar todas as raízes fornecidas no momento.

QuerySearchDocuments(String, String, String[])

Retorne documentos que correspondam à consulta fornecida na raiz solicitada.

QuerySearchDocuments(String, String[], Bundle)

Retorne documentos que correspondam à consulta fornecida na raiz solicitada.

Refresh(Uri, Bundle, CancellationSignal)

Implemente isso para dar suporte à atualização do conteúdo identificado por uri.

(Herdado de ContentProvider)
RemoveDocument(String, String)

Remove o documento solicitado ou uma árvore de documentos.

RenameDocument(String, String)

Renomeie um documento existente.

RequireContext()

Recupera um contexto não anulável em que este provedor está em execução, que se destina a ser chamado após #onCreate.

(Herdado de ContentProvider)
RestoreCallingIdentity(ContentProvider+CallingIdentity)

Restaure a identidade do IPC de entrada no thread atual de volta para uma identidade anterior que foi retornada por #clearCallingIdentity.

(Herdado de ContentProvider)
RevokeDocumentPermission(String)

Revogar quaisquer concessões de permissão ativas para o determinado Document#COLUMN_DOCUMENT_ID, geralmente chamado quando um documento se torna inválido.

SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle

(Herdado de Object)
SetPathPermissions(PathPermission[])

Altere a permissão baseada em caminho necessária para ler e/ou gravar dados no provedor de conteúdo.

(Herdado de ContentProvider)
SetReadPermission(String)

Altere a permissão necessária para ler dados do provedor de conteúdo. Isso normalmente é definido para você a partir de suas informações de manifesto quando o provedor é criado pela primeira vez.

(Herdado de ContentProvider)
SetWritePermission(String)

Altere a permissão necessária para gravar dados no provedor de conteúdo. Isso normalmente é definido para você a partir de suas informações de manifesto quando o provedor é criado pela primeira vez.

(Herdado de ContentProvider)
Shutdown()

Implemente isso para desligar a instância do ContentProvider.

(Herdado de ContentProvider)
ToArray<T>()

Cria uma matriz gerenciada com base nesse wrapper de matriz Java.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
Uncanonicalize(Uri)

Remova a canonicalização das URIs canônicas retornadas anteriormente por #canonicalize.

(Herdado de ContentProvider)
UnregisterFromRuntime()

Cancela o registro desse par Java do runtime de interoperabilidade.

(Herdado de Object)
Update(Uri, ContentValues, Bundle)

Implemente isso para lidar com solicitações para atualizar uma ou mais linhas.

(Herdado de ContentProvider)
Update(Uri, ContentValues, String, String[])

A implementação é fornecida pela classe pai.

Wait()

Faz com que o thread atual aguarde até que seja despertado, normalmente sendo <notificado></em> ou <em>interrompido</em>.

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)

Implantações explícitas de interface

Nome Description
IJavaPeerable.Disposed()

Notifica o runtime de interoperabilidade de que esse par gerenciado foi descartado.

(Herdado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Libera esse par Java, a menos que seja mantido por outra referência gerenciada.

(Herdado de Object)
IJavaPeerable.Finalized()

Notifica o runtime de interoperabilidade de que esse par gerenciado foi finalizado.

(Herdado de Object)
IJavaPeerable.JniManagedPeerState

Obtém o estado que descreve a relação entre esse par gerenciado e sua referência de JNI.

(Herdado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Define o código de hash de identidade de interoperabilidade para esse par Java.

(Herdado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Define o estado de par gerenciado e JNI para esse par Java.

(Herdado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Define a referência de objeto JNI usada por esse par gerenciado.

(Herdado de Object)

Métodos de Extensão

Nome Description
GetJniTypeName(IJavaPeerable)

Obtém o nome JNI do tipo da instância self.

JavaAs<TResult>(IJavaPeerable)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo verificada pelo tempo de execução do Android.

JavaCast<TResult>(IJavaObject)

Classe base para um provedor de documentos.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

Aplica-se a