O documento discute o uso de intents no Android para navegação entre telas de aplicativos. Ele explica o que são intents, como usar startActivity e startActivityForResult para abrir novas telas, e como configurar intent filters para receber intents de outros aplicativos.
3. GeorgeNunes–NTIGrupoCeuma
Intent
Representa a intenção da aplicação de realizar
determinada tarefa;
Nada mais é que uma mensagem ao SO;
A depender da mensagem e de seu conteúdo, o SO tomará
as decisões apropriadas;
4. GeorgeNunes–NTIGrupoCeuma
Intent
Uma Intent pode ser utilizada para:
Enviar uma mensagem para o Sistema Operacional;
Abrir uma nova tela da aplicação;
Ligar para outro celular;
Abrir o navegador;
E muitas outras ações.
8. GeorgeNunes–NTIGrupoCeuma
Intent
Intents podem ser explicitas ou implícitas
Explicitas: chamada direta ao component (exemplos anteriores);
Implícitas: pergunta ao Android quais componentes estão aptos
e registrados para abrirem os dados de uma determinada intent;
Exemplos intents implícitas:
9. GeorgeNunes–NTIGrupoCeuma
Intent Filter
android.content.IntentFilter;
Entender a arquitetura entre uma Intent, IntentFilter e
Activity é fundamental;
Exemplo: recebimento de SMS, intent com ação
android.provider.Telephony.SMS_RECEIVED;
Registro em outra aplicação da seguinte tag no
arquivo AndroidManifest.xml:
14. GeorgeNunes–NTIGrupoCeuma
Por que criar uma ação e
categoria para uma Intent?
Uma intent é uma mensagem enviada ao sistema
operacional, onde qualquer processo pode responder a
esta mensagem;
Portanto talvez, uma activity de outra aplicação seja
executada, e não exatamente a da nossa aplicação;
Uma ação e categoria é uma forma excelente de fazer
com que aplicações em processos diferentes se
comuniquem;
Desta forma, a ação e a categoria juntas, criam um alvo
“certeiro” não gerando dúvidas no processo de
comunicação;
16. GeorgeNunes–NTIGrupoCeuma
Na prática – Coding Dojo
Criação de dois Projetos Android: um app principal e um app secundário
App principal
Na MainActivity haverá dois buttons;
Primeiro button: chamará uma activity que terá um formulário de cadastro
de usuário (nome, email, senha). Deve-se chamar essa activity por meio
de ActivityforResult;
Ao clicar no button de finalizar cadastro, deve-se voltar para a tela de login
retornando os dados do usuário cadastrado;
Segundo button: terá a funcionalidade de chamar uma Activity por meio
de um startActivity;
Nessa nova Activity haverá uma mensagem de boas vindas, o nome do usuário
cadastrado e um button que chamará a Main Activity do app secundário;
App Secundário
Na MainActivity haverá uma ImageView qualquer;
A MainActivity deverá estar apta para ser aberta pelo click no ícone e
também pelo uso de intent filter;