PROGRAMAÇÃO PARA
DISPOSITIVOS MÓVEIS
Aula 2 – Intents (parte 1)
Objetivos da aula
 O que faltou dos conceitos básicos
 Configuração do ambiente
 Sobrescrever o ciclo de vida da Activity
 As Intents
 Simular recebimento de SMS
O que são feature
phones?
Quem já teve um
feature phone?
Ainda existem
feature phones?
Porque ainda
existem?
Qual o desafio do
Android?
Como era navegar
na internet com
feature phones?
Qual o navegador
do Android?
WebKit
Qual o navegador
do iPhone?
WebKit
Update: Blink!
Qual a vantagem
de rodar sobre o
Linux?
Abstração de HW!
O que é Dalvik
VM?
Objetivos da aula
 O que faltou dos conceitos básicos
 Configuração do ambiente
 Sobrescrever o ciclo de vida da Activity
 As Intents
 Simular recebimento de SMS
Rever o ambiente!
Objetivos da aula
 O que faltou dos conceitos básicos
 Configuração do ambiente
 Sobrescrever o ciclo de vida da Activity
 As Intents
 Simular recebimento de SMS
Inten[t]ção – Exercício 1
 Sobrescrevam os métodos do ciclo de vida da
Activity:
onCreate(), onStart(), onResume(), onPause(),
onStop(), onDestroy() e onRestart().
 Em cada método, utilize o Log.d() com uma
mensagem qualquer.
 Depura pelo Eclipse.
 Girar o emulador.
Objetivos da aula
 O que faltou dos conceitos básicos
 Configuração do ambiente
 Sobrescrever o ciclo de vida da Activity
 As Intents
 Simular recebimento de SMS
Intent
android.content.
Inten[t]ção
Inten[t]ção
O que é?
Uma necessidade a uma
ação ou serviço.
Inten[t]ção
O que é?
Inten[t]ção
 Quero procurar um registro de contato.
Inten[t]ção
 Quero procurar um registro de contato;
 Abra esse site web.
Inten[t]ção
 Quero procurar um registro de contato;
 Abra esse site web;
 Mostre a tela de confirmação de compra.
Inten[t]ção
 Quero procurar um registro de contato;
 Abra esse site web;
 Mostre a tela de confirmação de compra;
 Ligue para o número (XX) XXXX-XXXX.
Entenda o Intent e você
entenderá o Android!
Inten[t]ção
 Como iniciar uma segunda Activity?
Inten[t]ção
 Como iniciar uma segunda Activity?
1. public void onClick(View v) {
2. Intent minhaIntencao = new Intent(this, Tela2.class);
3. startActivity(minhaIntencao);
4. }
Inten[t]ção
 Como iniciar uma segunda Activity?
1. public void onClick(View v) {
2. Intent minhaIntencao = new Intent(this, Tela2.class);
3. startActivity(minhaIntencao);
4. }
Inten[t]ção
 Como iniciar uma segunda Activity?
1. public void onClick(View v) {
2. Intent minhaIntencao = new Intent(this, Tela2.class);
3. startActivity(minhaIntencao);
4. }
Inten[t]ção
 Como iniciar uma segunda Activity?
1. public void onClick(View v) {
2. Intent minhaIntencao = new Intent(this, Tela2.class);
3. startActivity(minhaIntencao);
4. }
Inten[t]ção
 Como iniciar uma segunda Activity?
1. public void onClick(View v) {
2. Intent minhaIntencao = new Intent(this, Tela2.class);
3. startActivity(minhaIntencao);
4. }
Inten[t]ção – Exercício 2
 Criem um projeto Android (Req. API 8);
 Criem um botão na tela;
 Criem uma segunda view (e sua activity);
 Iniciem a segunda tela ao clicar no botão da
tela principal.
Inten[t]ção
Acoplamento fraco
ou forte?
1. public void onClick(View v) {
2. Intent minhaIntencao = new Intent(this, Tela2.class);
3. startActivity(minhaIntencao);
4. }
Inten[t]ção
Forte acoplamento!
1. public void onClick(View v) {
2. Intent minhaIntencao = new Intent(this, Tela2.class);
3. startActivity(minhaIntencao);
4. }
Inten[t]ção
 Como fazer uma ligação?
Inten[t]ção
 Como fazer uma ligação?
1. public void onClick(View v) {
2. Uri uri = Uri.parse(“tel:99887744”);
3. Intent minhaIntencao = new Intent(Intent.ACTION_CALL, uri);
4. startActivity(minhaIntencao);
5. }
Inten[t]ção – Exercício 3
 Reaproveite o projeto anterior;
 Modifiquem o listener do botão para realizar
uma chamada.
Inten[t]ção
 Como abrir um browser?
Inten[t]ção
 Como abrir um browser?
1. public void onClick(View v) {
2. Uri uri = Uri.parse(“http://www.google.com/”);
3. Intent minhaIntencao = new Intent(Intent.ACTION_VIEW, uri);
4. startActivity(minhaIntencao);
5. }
Inten[t]ção – Exercício 4
 Reaproveite o projeto anterior;
 Modifiquem o listener do botão para abrir um
browser.
Objetivos da aula
 O que faltou dos conceitos básicos
 Configuração do ambiente
 Sobrescrever o ciclo de vida da Activity
 As Intents
 Simular recebimento de SMS
SMS – Exercício 5
 Iniciem a aplicação anterior no AVD;
 Acessem a perspectiva DDMS;
 Cliquem na view Emulator Control;
 Enviem um SMS;
 Observem o recebimento no AVD.
Obrigado!

Android - Programação para dispositivos móveis (Aula 2)