ContentProvider Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications.
[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
- Héritage
- Dérivé
- Attributs
- Implémente
Remarques
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. Ils encapsulent les données et les fournissent aux applications via l’interface unique ContentResolver . Un fournisseur de contenu n’est requis que si vous devez partager des données entre plusieurs applications. Par exemple, les données de contacts sont utilisées par plusieurs applications et doivent être stockées dans un fournisseur de contenu. Si vous n’avez pas besoin de partager des données entre plusieurs applications, vous pouvez utiliser une base de données directement via android.database.sqlite.SQLiteDatabase.
Lorsqu’une demande est effectuée via un ContentResolver système inspecte l’autorité de l’URI donné et transmet la demande au fournisseur de contenu inscrit auprès de l’autorité. Le fournisseur de contenu peut interpréter le reste de l’URI, mais il le souhaite. La UriMatcher classe est utile pour analyser les URI.
Les méthodes principales qui doivent être implémentées sont : <ul><li>#onCreate qui est appelée pour initialiser le fournisseur</li li><>#query qui retourne des données à l’appelant</li li><>#insert qui insère de nouvelles données dans le fournisseur< de contenu/li li><>#update qui met à jour les données existantes dans le fournisseur< de contenu/li li><>#delete qui supprime les données du fournisseur< de contenu/li li li><>#getType qui retourne le type MIME de données dans le fournisseur< de contenu/li></ul>
Les méthodes d’accès aux données (telles que #insert et #update) peuvent être appelées à partir de nombreux threads à la fois et doivent être thread-safe. D’autres méthodes (par exemple #onCreate) sont appelées uniquement à partir du thread principal de l’application et doivent éviter d’effectuer de longues opérations. Consultez les descriptions des méthodes pour leur comportement de thread attendu.
Les demandes à ContentResolver transférer automatiquement à l’instance ContentProvider appropriée, les sous-classes n’ont donc pas à vous soucier des détails des appels inter-processus.
<div class="special reference"><h3>Developer Guides</h3>
Pour plus d’informations sur l’utilisation de fournisseurs de contenu, consultez le guide du développeur des fournisseurs de contenu.
<Commande /div>
Java documentation pour android.content.ContentProvider.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.
Constructeurs
| Nom | Description |
|---|---|
| ContentProvider() |
Construisez une instance ContentProvider. |
| ContentProvider(IntPtr, JniHandleOwnership) |
Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime. |
Propriétés
| Nom | Description |
|---|---|
| CallingAttributionSource |
Obtient la source d’attribution de l’application appelante. |
| CallingAttributionTag |
Retourne la balise d’attribution de l’appelant qui a lancé la requête en cours de traitement sur le thread actuel. |
| CallingPackage |
Retourne le nom du package de l’appelant qui a lancé la requête en cours de traitement sur le thread actuel. |
| CallingPackageUnchecked |
Retourne le nom du package de l’appelant qui a lancé la requête en cours de traitement sur le thread actuel. |
| Class |
Retourne la classe runtime de ce |
| Context |
Récupère le contexte dans lequel ce fournisseur s’exécute. |
| Handle |
Handle de l’instance Android sous-jacente. (Hérité de Object) |
| IsTemporary |
Retourne true si cette instance est un fournisseur de contenu temporaire. |
| JniIdentityHashCode |
Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité. (Hérité de Object) |
| JniManagedPeerState |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| JniPeerMembers |
Obtient les métadonnées JNI utilisées pour appeler les membres de cet homologue Java. |
| PeerReference |
Obtient la référence d’objet JNI pour cet homologue Java. (Hérité de Object) |
| ReadPermission |
Obsolète.
Retourne le nom de l’autorisation requise pour l’accès en lecture seule à ce fournisseur de contenu. -ou- Modifiez l’autorisation requise pour lire les données du fournisseur de contenu. |
| ThresholdClass |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
| ThresholdType |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
| WritePermission |
Obsolète.
Retourne le nom de l’autorisation requise pour l’accès en lecture/écriture à ce fournisseur de contenu. -ou- Modifiez l’autorisation requise pour lire et écrire des données dans le fournisseur de contenu. |
Méthodes
| Nom | Description |
|---|---|
| ApplyBatch(IList<ContentProviderOperation>) |
Remplacez cette option pour gérer les demandes d’exécution d’un lot d’opérations, ou l’implémentation par défaut effectue une itération sur les opérations et appelle |
| ApplyBatch(String, IList<ContentProviderOperation>) |
Remplacez cette option pour gérer les demandes d’exécution d’un lot d’opérations, ou l’implémentation par défaut effectue une itération sur les opérations et appelle |
| AttachInfo(Context, ProviderInfo) |
Après avoir été instancié, il est appelé pour indiquer au fournisseur de contenu lui-même. |
| BulkInsert(Uri, ContentValues[]) |
Remplacez cette option pour gérer les demandes d’insertion d’un ensemble de nouvelles lignes, ou l’implémentation par défaut effectue une itération sur les valeurs et appelle |
| Call(String, String, Bundle) |
Appelez une méthode définie par un fournisseur. |
| Call(String, String, String, Bundle) |
Appelez une méthode définie par un fournisseur. |
| Canonicalize(Uri) |
Implémentez ceci pour prendre en charge la canonisation des URI qui font référence à votre fournisseur de contenu. |
| ClearCallingIdentity() |
Réinitialisez l’identité de l’IPC entrant sur le thread actuel. |
| Clone() |
Crée et retourne une copie de cet objet. (Hérité de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| Delete(Uri, Bundle) |
Implémentez cette opération pour gérer les demandes de suppression d’une ou plusieurs lignes. |
| Delete(Uri, String, String[]) |
Implémentez cette opération pour gérer les demandes de suppression d’une ou plusieurs lignes. |
| Dispose() |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| Dispose(Boolean) |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| DisposeUnlessReferenced() |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| Dump(FileDescriptor, PrintWriter, String[]) |
Imprimez l’état du fournisseur dans le flux donné. |
| DumpAsync(FileDescriptor, PrintWriter, String[]) |
Imprimez l’état du fournisseur dans le flux donné. Cela est appelé si vous exécutez « adb shell dumpsys activity provider <provider_component_name> ». |
| Equals(Object) |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| Equals(Object) |
Indique si un autre objet est « égal à » celui-ci. (Hérité de Object) |
| GetHashCode() |
Retourne une valeur de code de hachage pour l’objet. (Hérité de Object) |
| GetPathPermissions() |
Retournez les autorisations basées sur le chemin requises pour l’accès en lecture et/ou en écriture à ce fournisseur de contenu. |
| GetStreamTypes(Uri, String) |
Appelé par un client pour déterminer les types de flux de données pris en charge par ce fournisseur de contenu pour l’URI donné. |
| GetType(Uri) |
Implémentez ceci pour gérer les requêtes pour le type MIME des données au niveau de l’URI donné. |
| GetTypeAnonymous(Uri) |
Implémentez ceci pour gérer les demandes de type MIME de type d’URI, qui n’ont pas besoin de révéler des informations internes qui doivent être protégées par n’importe quelle autorisation. |
| Insert(Uri, ContentValues, Bundle) |
Implémentez ceci pour gérer les demandes d’insertion d’une nouvelle ligne. |
| Insert(Uri, ContentValues) |
Implémentez ceci pour gérer les demandes d’insertion d’une nouvelle ligne. |
| JavaFinalize() |
Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet. (Hérité de Object) |
| Notify() |
Réveille un thread unique qui attend le moniteur de cet objet. (Hérité de Object) |
| NotifyAll() |
Réveille tous les threads qui attendent le moniteur de cet objet. (Hérité de Object) |
| OnCallingPackageChanged() |
Appelé chaque fois que la valeur des |
| OnConfigurationChanged(Configuration) |
Appelé par le système lorsque la configuration de l’appareil change pendant l’exécution de votre composant. Notez que, contrairement aux activités, d’autres composants ne sont jamais redémarrés lorsqu’une configuration change : elles doivent toujours traiter les résultats de la modification, par exemple en récupérant à nouveau les ressources. Au moment où cette fonction a été appelée, votre objet Resources a été mis à jour pour retourner les valeurs de ressource correspondant à la nouvelle configuration. Pour plus d’informations, consultez Gestion des modifications du runtime . Cette méthode est toujours appelée sur le thread principal de l’application et ne doit pas effectuer de longues opérations. L’implémentation du fournisseur de contenu par défaut ne fait rien. Remplacez cette méthode pour prendre les mesures appropriées. (Les fournisseurs de contenu ne se soucient généralement pas des éléments tels que l’orientation de l’écran, mais peuvent vouloir connaître les modifications de paramètres régionaux.) Paramètres newConfig Configuration : nouvelle configuration de l’appareil. Cette valeur ne peut pas être null. |
| OnCreate() |
Implémentez cette opération pour initialiser votre fournisseur de contenu au démarrage. |
| OnLowMemory() |
Cela est appelé lorsque le système global est en cours d’exécution faible en mémoire et que les processus en cours d’exécution doivent réduire leur utilisation de la mémoire. Bien que le point exact auquel cela sera appelé n’est pas défini, il se produit généralement lorsque tous les processus en arrière-plan ont été tués. Autrement dit, avant d’atteindre le point de tuer les processus d’hébergement du service d’hébergement et de l’interface utilisateur de premier plan que nous aimerions éviter de tuer. Cette méthode est toujours appelée sur le thread principal de l’application et ne doit pas effectuer de longues opérations. L’implémentation du fournisseur de contenu par défaut ne fait rien. Les sous-classes peuvent remplacer cette méthode pour prendre les mesures appropriées. |
| OnTrimMemory(TrimMemory) |
Appelé lorsque le système d’exploitation a déterminé qu’il est judicieux qu’un processus supprime la mémoire inutile de son processus. |
| OpenAssetFile(Uri, String, CancellationSignal) |
C’est comme |
| OpenAssetFile(Uri, String) |
C’est comme |
| OpenFile(Uri, String, CancellationSignal) |
Remplacez cette option pour gérer les demandes d’ouverture d’un objet blob de fichiers. |
| OpenFile(Uri, String) |
Remplacez cette option pour gérer les demandes d’ouverture d’un objet blob de fichiers. |
| OpenFileHelper(Uri, String) |
Commodité pour les sous-classes qui souhaitent implémenter |
| OpenPipeHelper(Uri, String, Bundle, Object, ContentProvider+IPipeDataWriter) |
Fonction d’assistance pour l’implémentation |
| OpenTypedAssetFile(Uri, String, Bundle, CancellationSignal) |
Appelé par un client pour ouvrir un flux en lecture seule contenant des données d’un type MIME particulier. |
| OpenTypedAssetFile(Uri, String, Bundle) |
Appelé par un client pour ouvrir un flux en lecture seule contenant des données d’un type MIME particulier. |
| Query(Uri, String[], Bundle, CancellationSignal) |
Implémentez ceci pour gérer les requêtes où les arguments sont empaquetés dans un |
| Query(Uri, String[], String, String[], String, CancellationSignal) |
Implémentez cette opération pour gérer les requêtes des clients avec prise en charge de l’annulation. |
| Query(Uri, String[], String, String[], String) |
Implémentez ceci pour gérer les requêtes des clients. |
| Refresh(Uri, Bundle, CancellationSignal) |
Implémentez cela pour prendre en charge l’actualisation du contenu identifié par |
| RequireContext() |
Récupère un contexte non Nullable dans lequel ce fournisseur s’exécute, il est destiné à être appelé après |
| RestoreCallingIdentity(ContentProvider+CallingIdentity) |
Restaurez l’identité de l’IPC entrant sur le thread actuel vers une identité précédemment retournée par |
| SetHandle(IntPtr, JniHandleOwnership) |
Définit la propriété Handle. (Hérité de Object) |
| SetPathPermissions(PathPermission[]) |
Modifiez l’autorisation basée sur le chemin nécessaire pour lire et/ou écrire des données dans le fournisseur de contenu. |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| SetReadPermission(String) |
Modifiez l’autorisation requise pour lire les données du fournisseur de contenu. Cela est normalement défini pour vous à partir de ses informations de manifeste lors de la création du fournisseur. |
| SetWritePermission(String) |
Modifiez l’autorisation requise pour écrire des données dans le fournisseur de contenu. Cela est normalement défini pour vous à partir de ses informations de manifeste lors de la création du fournisseur. |
| Shutdown() |
Implémentez cette opération pour arrêter l’instance ContentProvider. |
| ToArray<T>() |
Crée un tableau managé à partir de ce wrapper de tableau Java. (Hérité de Object) |
| ToString() |
Retourne une représentation sous forme de chaîne de l’objet. (Hérité de Object) |
| Uncanonicalize(Uri) |
Supprimez la canonisation des URI canoniques précédemment retournés par |
| UnregisterFromRuntime() |
Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité. (Hérité de Object) |
| Update(Uri, ContentValues, Bundle) |
Implémentez ceci pour gérer les demandes de mise à jour d’une ou plusieurs lignes. |
| Update(Uri, ContentValues, String, String[]) |
Implémentez ceci pour gérer les demandes de mise à jour d’une ou plusieurs lignes. |
| Wait() |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<> (Hérité de Object) |
| Wait(Int64, Int32) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
| Wait(Int64) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| IJavaPeerable.Disposed() |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| IJavaPeerable.Finalized() |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. (Hérité de JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. |
Méthodes d’extension
| Nom | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtient le nom JNI du type de l’instance |
| JavaAs<TResult>(IJavaPeerable) |
Essayez de forcer |
| JavaCast<TResult>(IJavaObject) |
Effectue une conversion de type vérifiée par le runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Les fournisseurs de contenu sont l’un des principaux blocs de construction des applications Android, fournissant du contenu aux applications. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Essayez de forcer |