Otros artículos interesantes
Cómo usar Content Provider
Content Provider proporciona una interfaz estandarizada para acceder y manipular datos. Se accede a los datos a través de URI (Uniform Resource Identifier) definido por el Content Provider.
1. Acceso a los datos desde Content Provider
Para acceder a los datos desde el Content Provider, debe utilizar el ContentResolver y el URI adecuados.
Ejemplo de acceso a una lista de contactos:
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. Agregar, modificar o eliminar datos
También puede agregar, cambiar o eliminar datos a través de Content Provider utilizando ContentResolver.
Adición de datos:
ContentValues values = new ContentValues();
values.put(ContactsContract.Contacts.DISPLAY_NAME, “John Doe”);
Uri newContactUri = getContentResolver().insert(ContactsContract.Contacts.CONTENT_URI, values);
Modificación de datos:
ContentValues values = new ContentValues();
values.put(ContactsContract.Contacts.DISPLAY_NAME, “Jane Doe”);
getContentResolver().update(ContactsContract.Contacts.CONTENT_URI, values, null, null);
Eliminación de datos:
getContentResolver().delete(ContactsContract.Contacts.CONTENT_URI, null, null);
Ejemplos de uso de Content Provider
1. Aplicación de contacto:
- Content Provider permite que otras aplicaciones accedan a la lista de contactos del usuario.
- Ejemplo: Una aplicación de mensajería utiliza un Content Provider para seleccionar el contacto del destinatario.
2. Aplicación de galería de fotos:
- Content Provider permite que otras aplicaciones accedan a las fotos y videos almacenados en el dispositivo.
- Ejemplo: Una aplicación de redes sociales utiliza un Content Provider para seleccionar las fotos que se van a subir.
3. Aplicación de calendario:
- Content Provider permite que otras aplicaciones accedan a horarios y eventos en el calendario del usuario.
- Ejemplo: Una aplicación de recordatorio utiliza un Content Provider para agregar eventos al calendario.
7. Application Manifest: pegamento que mantiene unidas las aplicaciones
Application Manifest es un archivo XML que sirve como un “pegamento” que mantiene unidos todos los componentes de una aplicación de Android. Este archivo define la estructura de la aplicación, incluidos Activity, Service, Broadcast Receiver y Content Provider, así como los permisos necesarios para la aplicación.
El importante papel de Application Manifest
1. Definición de los componentes de la aplicación:
- Activity: Define la pantalla o la interfaz de usuario.
- Service: Defina el proceso en segundo plano.
- Broadcast Receiver: Define los componentes que responden a los mensajes del sistema.
- Content Provider: Definir el mecanismo de intercambio de datos.
Ejemplo de Activity definición en 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. Declarar permiso:
- Las aplicaciones de Android requieren permiso para acceder a ciertas funciones, como la cámara, la ubicación o Internet.
- Este permiso fue declarado en AndroidManifest.xml.
Ejemplo de una declaración de permiso:
<uses-permission android:name=“android.permission.CAMERA” />
<uses-permission android:name=“android.permission.INTERNET” />