Comment utiliser Content Provider
Content Provider fournit une interface standardisée pour l’accès et la manipulation des données. L’accès aux données s’effectue via URI (Uniform Resource Identifier) défini par le Content Provider.
1. Accès aux données à partir de Content Provider
Pour accéder aux données du Content Provider, vous devez utiliser les ContentResolver et les URI appropriés.
Exemple d’accès à une liste de contacts :
Uri uri = ContactsContract.Contacts.CONTENT_URI ;
Cursor cursor = getContentResolver().query(uri, null, null, null, null) ;
if (cursor != null) {
while (cursor.moveToNext()) {
String name cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)) ;
Log.d(“Contact”, name) ;
}
cursor.close() ;
}
2. Ajouter, modifier ou supprimer des données
Vous pouvez également ajouter, modifier ou supprimer des données via Content Provider à l’aide de ContentResolver.
Ajout de données :
ContentValues values =new ContentValues() ;
values.put(ContactsContract.Contacts.DISPLAY_NAME, “John Doe”) ;
Uri newContactUri = getContentResolver().insert(ContactsContract.Contacts.CONTENT_URI, values) ;
Modification des données :
ContentValues values =new ContentValues() ;
values.put(ContactsContract.Contacts.DISPLAY_NAM, “Jane Doe”) ;
getContentResolver().update(ContactsContract.Contacts.CONTENT_URI, values, null, null) ;
Suppression des données :
getContentResolver().delete(ContactsContract.Contacts.CONTENT_URI, null, null) ;
Exemples d’ utilisation de Content Provider
1. Contacter l’application :
- Content Provider permet à d’autres applications d’accéder à la liste de contacts de l’utilisateur.
- Exemple : Une application de messagerie utilise un Content Provider pour sélectionner le contact du destinataire.
2. Application de galerie de photos :
- Content Provider permet à d’autres applications d’accéder aux photos et vidéos stockées sur l’appareil.
- Exemple : Une application de réseau social utilise un Content Provider pour sélectionner les photos à télécharger.
3. Application de calendrier :
- Content Provider permet à d’autres applications d’accéder aux calendriers et aux événements du calendrier de l’utilisateur.
- Exemple : Une application de rappel utilise un Content Provider pour ajouter des événements au calendrier.
7. Application Manifest : De la colle qui maintient les applications ensemble
Application Manifest est un fichier XML qui sert de « colle » qui maintient tous les composants d’une application Android ensemble. Ce fichier définit la structure de l’application, y compris Activity, Service, Broadcast Receiver et Content Provider, ainsi que les autorisations requises par l’application.
Autres articles intéressants
Le rôle important de Application Manifest
1. Définition des composants de l’application :
- Activity : définit l’écran ou l’interface utilisateur.
- Service : Définissez le processus d’arrière-plan.
- Broadcast Receiver : Définit les composants qui répondent aux messages système.
- Content Provider : Définir le mécanisme de partage des données.
Exemple de définition Activity dans AndroidManifest.xml :
<activity android :name=“.MainActivity”>
<intent-filter>
<action android :name=“android.intent.action.MAIN” />
<category android :name=“android.intent.category.LAUNCHER” />
</intent-filter>
</activity>
2. Déclarer l’autorisation :
- Les applications Android nécessitent une autorisation pour accéder à certaines fonctionnalités, telles que l’appareil photo, la localisation ou Internet.
- Ce permis a été déclaré en AndroidManifest.xml.
Exemple de déclaration d’autorisation :
<uses-permission android :name=“android.permission.CAMERA” />
<uses-permission android :name=“android.permission.INTERNET” />