ContentProvider Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos.
[Android.Runtime.Register("android/content/ContentProvider", DoNotGenerateAcw=true)]
public abstract class ContentProvider : Java.Lang.Object, Android.Content.IComponentCallbacks2, IDisposable
[<Android.Runtime.Register("android/content/ContentProvider", DoNotGenerateAcw=true)>]
type ContentProvider = class
inherit Object
interface IComponentCallbacks
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface IComponentCallbacks2
- Herança
- Derivado
- Atributos
- Implementações
Comentários
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. Eles encapsulam os dados e fornecem-nos aos aplicativos por meio da interface única ContentResolver . Um provedor de conteúdo só será necessário se você precisar compartilhar dados entre vários aplicativos. Por exemplo, os dados de contatos são usados por vários aplicativos e devem ser armazenados em um provedor de conteúdo. Se você não precisar compartilhar dados entre vários aplicativos, poderá usar um banco de dados diretamente por meio android.database.sqlite.SQLiteDatabasede .
Quando uma solicitação é feita por meio de um ContentResolver sistema inspeciona a autoridade do URI fornecido e passa a solicitação para o provedor de conteúdo registrado com a autoridade. O provedor de conteúdo pode interpretar o restante do URI como desejar. A UriMatcher classe é útil para analisar URIs.
Os principais métodos que precisam ser implementados são: <ul><li>#onCreate, que é chamado para inicializar o provedor</li><li>#query que retorna dados ao chamador</li><li>#insert, que insere novos dados no provedor< de conteúdo/li><li>#update, que atualiza os dados existentes no provedor< de conteúdo/li><li>#delete, que exclui dados do provedor< de conteúdo/li><li li>#getType que retorna o tipo MIME de dados no provedor< de conteúdo/li></ul>
Métodos de acesso a dados (como #insert e #update) podem ser chamados de muitos threads ao mesmo tempo e devem ser thread-safe. Outros métodos (como #onCreate) são chamados apenas do thread principal do aplicativo e devem evitar a execução de operações longas. Consulte as descrições do método para o comportamento de thread esperado.
As solicitações a ContentResolver serem encaminhadas automaticamente para a instância apropriada do ContentProvider, portanto, as subclasses não precisam se preocupar com os detalhes das chamadas entre processos.
<div class="special reference"><h3>Developer Guides</h3>
Para obter mais informações sobre como usar provedores de conteúdo, leia o guia do desenvolvedor de Provedores de Conteúdo .
</div>
Java documentação para android.content.ContentProvider.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Construtores
| Nome | Description |
|---|---|
| ContentProvider() |
Construir uma instância do ContentProvider. |
| ContentProvider(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. |
| CallingAttributionTag |
Retorne a marca de atribuição do chamador que iniciou a solicitação que está sendo processada no thread atual. |
| CallingPackage |
Retorne o nome do pacote do chamador que iniciou a solicitação que está sendo processada no thread atual. |
| CallingPackageUnchecked |
Retorne o nome do pacote do chamador que iniciou a solicitação que está sendo processada no thread atual. |
| Class |
Retorna a classe de runtime deste |
| Context |
Recupera o contexto em que este provedor está em execução. |
| 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. |
| JniIdentityHashCode |
Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade. (Herdado de Object) |
| JniManagedPeerState |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| JniPeerMembers |
Obtém os metadados JNI usados para invocar membros desse par Java. |
| 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. |
| ThresholdClass |
Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código. |
| ThresholdType |
Essa API dá suporte à infraestrutura do 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. |
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á |
| 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á |
| AttachInfo(Context, ProviderInfo) |
Depois de instanciado, isso é chamado para informar o provedor de conteúdo sobre si mesmo. |
| 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á |
| Call(String, String, Bundle) |
Chame um método definido pelo provedor. |
| Call(String, String, String, Bundle) |
Chame um método definido pelo provedor. |
| Canonicalize(Uri) |
Implemente isso para dar suporte à canonicalização de URIs que se referem ao seu provedor de conteúdo. |
| ClearCallingIdentity() |
Redefina a identidade do IPC de entrada no thread atual. |
| Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| Delete(Uri, Bundle) |
Implemente isso para lidar com solicitações para excluir uma ou mais linhas. |
| Delete(Uri, String, String[]) |
Implemente isso para lidar com solicitações para excluir uma ou mais linhas. |
| 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) |
| DisposeUnlessReferenced() |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| Dump(FileDescriptor, PrintWriter, String[]) |
Imprima o estado do Provedor no fluxo fornecido. |
| 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>". |
| Equals(Object) |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| Equals(Object) |
Indica se algum outro objeto é "igual a" este. (Herdado de Object) |
| 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. |
| 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. |
| GetType(Uri) |
Implemente isso para lidar com solicitações para o tipo MIME dos dados no URI fornecido. |
| GetTypeAnonymous(Uri) |
Implemente isso para lidar com solicitações para o tipo MIME de URIs, que não precisam revelar informações internas que devem ser protegidas por qualquer permissão. |
| Insert(Uri, ContentValues, Bundle) |
Implemente isso para lidar com solicitações para inserir uma nova linha. |
| Insert(Uri, ContentValues) |
Implemente isso para lidar com solicitações para inserir uma nova linha. |
| JavaFinalize() |
Obsoleto.
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) |
| Notify() |
Ativa um único thread que está aguardando no monitor deste 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 |
| OnConfigurationChanged(Configuration) |
Para ser adicionado, esse método é sempre chamado no thread principal do aplicativo e não deve executar operações longas. |
| OnCreate() |
Implemente isso para inicializar seu provedor de conteúdo na inicialização. |
| OnLowMemory() |
Para ser adicionado, esse método é sempre chamado no thread principal do aplicativo e não deve executar operações longas. |
| OnTrimMemory(TrimMemory) |
Chamado quando o sistema operacional determinou que é um bom momento para um processo cortar a memória desnecessária de seu processo. |
| OpenAssetFile(Uri, String, CancellationSignal) |
Isso é semelhante |
| OpenAssetFile(Uri, String) |
Isso é semelhante |
| OpenFile(Uri, String, CancellationSignal) |
Substitua isso para manipular solicitações para abrir um blob de arquivos. |
| OpenFile(Uri, String) |
Substitua isso para manipular solicitações para abrir um blob de arquivos. |
| OpenFileHelper(Uri, String) |
Conveniência para subclasses que desejam implementar |
| OpenPipeHelper(Uri, String, Bundle, Object, ContentProvider+IPipeDataWriter) |
Uma função auxiliar para implementação |
| OpenTypedAssetFile(Uri, String, Bundle, CancellationSignal) |
Chamado por um cliente para abrir um fluxo somente leitura contendo dados de um tipo MIME específico. |
| OpenTypedAssetFile(Uri, String, Bundle) |
Chamado por um cliente para abrir um fluxo somente leitura contendo dados de um tipo MIME específico. |
| Query(Uri, String[], Bundle, CancellationSignal) |
Implemente isso para lidar com solicitações de consulta em que os argumentos são empacotados em um |
| Query(Uri, String[], String, String[], String, CancellationSignal) |
Implemente isso para lidar com solicitações de consulta de clientes com suporte para cancelamento. |
| Query(Uri, String[], String, String[], String) |
Implemente isso para lidar com solicitações de consulta de clientes. |
| Refresh(Uri, Bundle, CancellationSignal) |
Implemente isso para dar suporte à atualização do conteúdo identificado por |
| RequireContext() |
Recupera um contexto não anulável em que este provedor está em execução, que se destina a ser chamado após |
| RestoreCallingIdentity(ContentProvider+CallingIdentity) |
Restaure a identidade do IPC de entrada no thread atual de volta para uma identidade anterior que foi retornada por |
| 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. |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| 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. |
| 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. |
| Shutdown() |
Implemente isso para desligar a instância do 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 |
| 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. |
| Update(Uri, ContentValues, String, String[]) |
Implemente isso para lidar com solicitações para atualizar uma ou mais linhas. |
| Wait() |
Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<> (Herdado de Object) |
| Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>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 ele seja despertado, normalmente por ser <>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() |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| IJavaPeerable.Finalized() |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. (Herdado de JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Remove essa instância da pesquisa de objeto Java do runtime. |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtém o nome JNI do tipo da instância |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo marcada por runtime do Android. |
| JavaCast<TResult>(IJavaObject) |
Os provedores de conteúdo são um dos principais blocos de construção de aplicativos Android, fornecendo conteúdo para aplicativos. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |