Conhecendo as estruturas de apps Android: atividades, fragmentos e broadcast receivers

Como usar o Content Provider

Content Provider fornece uma interface padronizada para acessar e manipular dados. Os dados são acessados por meio de URI (Uniform Resource Identifier) definido pelo Content Provider.

1. Acessando dados de Content Provider

Para acessar os dados do Content Provider, você precisa usar o ContentResolver e o URI apropriados.

Exemplo de acesso a uma lista de contatos:

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. Adicionando, modificando ou excluindo dados

Você também pode adicionar, alterar ou excluir dados por meio de Content Provider usando ContentResolver.

Adicionando dados:

ContentValues values =   new ContentValues();
values.put(ContactsContract.Contacts.DISPLAY_NAME, “John Doe”);
Uri newContactUri = getContentResolver().insert(ContactsContract.Contacts.CONTENT_URI, values);

Alteração de dados:

ContentValues values =   new ContentValues();
values.put(ContactsContract.Contacts.DISPLAY_NAME, “Jane Doe”);
getContentResolver().update(ContactsContract.Contacts.CONTENT_URI, values, null, null);

Excluindo dados:

getContentResolver().delete(ContactsContract.Contacts.CONTENT_URI, null, null);

Exemplos de  uso do Content Provider

1. Aplicação do contato:

  • Content Provider permite que outros aplicativos acessem a lista de contatos do usuário.
  • Exemplo: um aplicativo de mensagens usa um Content Provider para selecionar o contato do destinatário.

2. Aplicativo de galeria de fotos:

  • Content Provider permite que outros aplicativos acessem fotos e vídeos armazenados no dispositivo.
  • Exemplo: um aplicativo de mídia social usa um Content Provider para selecionar fotos para upload.

3. Aplicativo de calendário:

  • Content Provider permite que outros aplicativos acessem agendas e eventos no calendário do usuário.
  • Exemplo: um aplicativo de lembrete usa um Content Provider para adicionar eventos ao calendário.

7. Application Manifest: Colagem que mantém aplicações unidas

Application Manifest é um arquivo XML que serve como uma “cola” que mantém todos os componentes de um aplicativo Android juntos. Esse arquivo define a estrutura do aplicativo, incluindo Activity, Service, Broadcast Receiver e Content Provider, bem como as permissões exigidas pelo aplicativo.

O importante papel do Application   Manifest

1. Definindo componentes do aplicativo:

  • Activity: Define a tela ou a interface do usuário.
  • Service: Defina o processo em segundo plano.
  • Broadcast Receiver: Define os componentes que respondem às mensagens do sistema.
  • Content Provider: Defina o mecanismo de compartilhamento de dados.

Exemplo de definição de Activity  em 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. Declare permissão:

  • Os aplicativos Android exigem permissão para acessar determinados recursos, como câmera, localização ou Internet.
  • Esta licença foi declarada em AndroidManifest.xml.

Exemplo de uma declaração de permissão:

<uses-permission android:name=“android.permission.CAMERA” />
<uses-permission android:name=“android.permission.INTERNET” />

Últimos artigos