7. Manifesto Android

O Manifesto Android (arquivo AndroidManifest.xml) é um arquivo essencial para qualquer aplicativo Android. Ele define informações fundamentais que o sistema operacional precisa para executar o aplicativo corretamente. No manifesto, você especifica a estrutura básica do app, permissões, componentes, entre outros detalhes que guiam o comportamento do aplicativo no dispositivo.

Algumas Informações Importantes no Manifesto:

Nome do Pacote (Package Name): O manifesto define o nome do pacote do aplicativo, que serve como um identificador único do app no Google Play e no sistema Android.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="br.edu.ifsc.ctds.minicalculadora">

Contudo, nas novas versões do Gradle essa propriedade foi movida e se encontra no arquivo build.gradle na seção Android -> namespace

Permissões: O manifesto é onde você declara as permissões que seu aplicativo precisa para acessar recursos protegidos do sistema, como internet, câmera, GPS, etc. Essas permissões são solicitadas ao usuário durante a instalação ou execução do app.

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

Componentes do App: O manifesto define os principais componentes do aplicativo: Activities, Services, Broadcast Receivers e Content Providers. Isso informa ao sistema quais partes compõem o app e como ele interage com o usuário ou outros serviços.

  • Activities: Representa telas do aplicativo.
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
  • Services: Define serviços que executam tarefas em segundo plano.
<service android:name=".MyService" />
  • Broadcast Receivers: Define componentes que recebem notificações de eventos globais, como mudanças na conectividade.
<receiver android:name=".MyBroadcastReceiver" />
  • Content Providers: Gerencia o acesso a um banco de dados compartilhado.
<provider android:name=".MyContentProvider" />

Configurações de Hardware e Software: O manifesto pode declarar quais recursos de hardware o app requer, como câmera, GPS ou sensor de movimento, além de configurações de software como bibliotecas externas.

<uses-feature android:name="android.hardware.camera" />

Configurações de Orientação e Tela: O manifesto permite especificar como o app lida com mudanças de orientação (paisagem/retrato) ou tamanhos de tela.

android:screenOrientation="portrait"
Importância do Manifesto
  • Registro dos Componentes: Todos os componentes essenciais, como atividades e serviços, precisam ser registrados no manifesto para que o Android os reconheça.
  • Segurança: As permissões e restrições declaradas no manifesto são essenciais para garantir a segurança do usuário, assegurando que o aplicativo apenas acesse os recursos necessários.
  • Compatibilidade: Definir versões de SDK e hardware ajuda a garantir que o app funcione corretamente em dispositivos com diferentes especificações.

O manifesto é a “carta de apresentação” do aplicativo para o sistema Android, garantindo que ele funcione conforme as especificações e regras de segurança da plataforma.