Weitere interessante Artikel
So verwenden Sie Content Provider
Content Provider bietet eine standardisierte Schnittstelle für den Zugriff auf und die Manipulation von Daten. Der Datenzugriff erfolgt über URI (Uniform Resource Identifier) die durch die Content Provider definiert sind.
1. Zugriff auf Daten von Content Provider
Um auf Daten aus dem Content Provider zuzugreifen, müssen Sie die entsprechenden ContentResolver und URI verwenden.
Beispiel für den Zugriff auf eine Kontaktliste:
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. Hinzufügen, Ändern oder Löschen von Daten
Sie können Daten auch über Content Provider mit ContentResolver hinzufügen, ändern oder löschen.
Hinzufügen von Daten:
ContentValues values = new ContentValues();
values.put(ContactsContract.Contacts.DISPLAY_NAME, “John Doe”);
Uri newContactUri =getContentResolver().insert(ContactsContract.Contacts.CONTENT_URI, values);
Ändern von Daten:
ContentValues values = new ContentValues();
values.put(ContactsContract.Contacts.DISPLAY_NAME, “Jane Doe”);
getContentResolver().update(ContactsContract.Contacts.CONTENT_URI, values, null, null);
Löschen von Daten:
getContentResolver().delete(ContactsContract.Contacts.CONTENT_URI, null, null);
Beispiele für die Verwendung von Content Provider
1. Kontakt Anwendung:
- Content Provider ermöglicht es anderen Apps, auf die Kontaktliste des Benutzers zuzugreifen.
- Beispiel: Eine Messaging-App verwendet eine Content Provider, um den Kontakt des Empfängers auszuwählen.
2. Fotogalerie-App:
- Content Provider ermöglicht es anderen Apps, auf Fotos und Videos zuzugreifen, die auf dem Gerät gespeichert sind.
- Beispiel: Eine Social-Media-App verwendet eine Content Provider, um Fotos zum Hochladen auszuwählen.
3. Kalender-App:
- Content Provider ermöglicht es anderen Apps, auf Zeitpläne und Ereignisse im Kalender des Benutzers zuzugreifen.
- Beispiel: Eine Erinnerungs-App verwendet eine Content Provider, um Ereignisse zum Kalender hinzuzufügen.
7. Application Manifest: Kleber, der Anwendungen zusammenhält
Application Manifest ist eine XML-Datei, die als “Klebstoff” dient, der alle Komponenten einer Android-App zusammenhält. Diese Datei definiert die Struktur der Anwendung, einschließlich Activity, Service, Broadcast Receiver und Content Provider, sowie die für die Anwendung erforderlichen Berechtigungen.
Die wichtige Rolle von Application Manifest
1. Definieren von Anwendungskomponenten:
- Activity: Definiert den Bildschirm oder die Benutzeroberfläche.
- Service: Definieren Sie den Hintergrundprozess.
- Broadcast Receiver: Definiert die Komponenten, die auf Systemmeldungen reagieren.
- Content Provider: Definieren Sie den Mechanismus des Datenaustauschs.
Beispiel für Activity Definition in 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. Erklären Sie die Erlaubnis:
- Android-Apps benötigen eine Berechtigung, um auf bestimmte Funktionen wie Kamera, Standort oder Internet zugreifen zu können.
- Diese Genehmigung wurde im AndroidManifest.xml erteilt.
Beispiel für eine Berechtigungsdeklaration:
<uses-permission android:name=“android.permission.CAMERA” />
<uses-permission android:name=“android.permission.INTERNET” />