SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
Intent, Broadcast
Receiver e Notifications


Gustavo Henrique Rodrigues Pinto Tomas
    gustavo.rodrigues@cesar.org.br
Agenda
• Intent
      – Intent Filter
      – Desafio 1
      – Desafio 2
• Broadcast Receiver
      – Desafio 3
• Notifications
      – Desafio 4




16/02/2012                       2
Intent
• Comunicação de activities, services e broadcast
  receiver;
• Inicia apenas uma ação;
• Falicita a comunicação em uma mesma
  aplicação e entre aplicações;
• Envia e recebe dados (tipos primitivos, objetos
  serializáveis...).




16/02/2012                                          3
Intent(2)
• Exemplo:
      Intent it = new Intent(this, ViewFormActivity.class);

      it.putExtra(ViewFormActivity.NAME_INTENT, name);
      it.putExtra(ViewFormActivity.ADDRESS_INTENT, adress);
      it.putExtra(ViewFormActivity.AGE_INTENT, age);
      it.putExtra(ViewFormActivity.USER_INTENT, user);

      startActivity(it);

             Boas Práticas: Ao setar a key em um método putExtra, utilize
             sempre constantes definidas como public na activity de
             destino



16/02/2012                                                                  4
Intent(3)
• Utilizando intents é possível invocar outras
  aplicações através das respectivas actions.
• Exemplos:
      – Intent.ACTION_CALL: faz uma ligação;
      – Intent.ACTION_DIAL: abre o aplicativo default de dial;
      – Intent.ACTION_MAIN:
             • CATEGORY_APP_EMAIL: abre o aplicativo de email;
             • CATEGORY_APP_BROWSER: abre o browser;
             • ATEGORY_APP_CONTACTS abre o aplicativo de calendario;




16/02/2012                                                             5
Intent Filter
• Mecanismo alternativo de invocar uma activity:
 <activity
      android:name=“MInhaActivity"
      android:label="@string/app_name" >
      <intent-filter>
         <action android:name=“ABRA_MINHA_ACTIVITY" />
         <category android:name="android.intent.category.DEFAULT" />
      </intent-filter>
 </activity>

• Android fica ouvindo um intent com a ação
  ABRA_MINHA_ACTIVITY.Assim que receber
  invocará MinhaActivity.

16/02/2012                                                             6
Desafio 1 - Intent
• Criar uma aplicação com duas telas:
      – A primeira será um formulário com os campos nome, endereço e
        idade com um botão “Enviar”. Quando o usuário clicar no botão
        as informações devem ser enviadas para a segunda activity;
      – A segunda activity deve apenas receber os dados e exibir na
        tela;



             Boas Práticas: Ao definir o id de um componente, utilize:
             android:id=“@+idNOMEDESCRITIVO/...” na qual
             NOMEDESCRITIVO pode ser um label para a activity



16/02/2012                                                               7
Desafio 2: Intent
• Alterar a aplicação anterior para enviar as
  informações a partir de uma classe chamada
  Form, com as informações do formulário.




             Através de um intent é possível enviar objetos serializáveis




16/02/2012                                                                  8
BroadCast Receiver
• Permitir que a sua aplicação fique “ouvindo”
  intents iniciados por qualquer aplicativo;
• Declaração no AndroidManifest.xml:
</application>
    <receiver android:name="ReceiverSample">
        <intent-filter>
            <action
              android:name="android.intent.action.PHONE_STATE“ />
        </intent-filter>
    </receiver>
</application>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>



16/02/2012                                                              9
BroadCast Receiver
• Quanto algum aplicativo enviar um intent do tipo
  PHONE_STATE, será chamado o método
  onReceive() da classe ReceiverSample;
• ReceiverSample deve estender de
  BroadcastReceiver;

public class ReceiverSample extends BroadcastReceiver {
   @Override
   public void onReceive(Context context, Intent intent) {
   }
}



16/02/2012                                                   10
Desafio 3: Broadcast Receiver
• Alterar a aplicação Formulário para ao receber
  uma chamada telefônica, interceptar e logar o
  numero do telefone que esta ligando;




             Não se esquece de declarar a permissão de
             android.permission.READ_PHONE_STATE para ler as
             alterações de estado do telefone




16/02/2012                                                     11
Notifications
• Mecanismo de feedback imediato ao usuário;
• Utilizado quando algum processamento em
  background precisa de alguma iteração com o
  usuário;
• Mais utilizado: Status Bar




16/02/2012                                      12
Notifications: Status Bar
String ns = Context.NOTIFICATION_SERVICE;
NotificationManager mNotificationManager = (NotificationManager)
   getSystemService(ns);

CharSequence tickerText = "New call captured";

Notification notification = new Notification(R.drawable.ic_launcher,
   tickerText, when);

CharSequence contentTitle = "Phone Number";
CharSequence contentText = “Content message”;
Intent notificationIntent = new Intent(this, FormAPKActivity.class);
PendingIntent contentIntent = PendingIntent.getActivity(c, 0,
   notificationIntent, 0);

notification.setLatestEventInfo(this, contentTitle, contentText,
   contentIntent);

mNotificationManager.notify(HELLO_ID, notification);



16/02/2012                                                             13
Desafio 4: Status Bar
• Alterar a aplicação desenvolvida para assim que
  receber uma ligação notificar o usuário usando
  Status Bar com o número de telefone;




             Utilize o BroadcastReceiver criado no desafio anterior.




16/02/2012                                                             14
Obrigado!

         Gustavo Henrique Rodrigues Pinto Tomas
          Email: gustavo.rodrigues@cesar.org.br
                Twitter: @gustahrodrigues

    Código fonte disponível em: http://bit.ly/xGrlTW




16/02/2012                                             15

Weitere ähnliche Inhalte

Was ist angesagt?

Desenvolvimento de Apps e Games para Android - Parte 5
Desenvolvimento de Apps e Games para Android - Parte 5Desenvolvimento de Apps e Games para Android - Parte 5
Desenvolvimento de Apps e Games para Android - Parte 5Erisvaldo Junior
 
Apresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaApresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaGPrimola
 
Introdução ao Android (minicurso 4h)
Introdução ao Android (minicurso 4h)Introdução ao Android (minicurso 4h)
Introdução ao Android (minicurso 4h)Rodrigo Rocha
 
Aula 05/06 (Service)
Aula 05/06 (Service)Aula 05/06 (Service)
Aula 05/06 (Service)Ricardo Longa
 
Computação Móvel 2012.2 - Android
Computação Móvel 2012.2 - AndroidComputação Móvel 2012.2 - Android
Computação Móvel 2012.2 - AndroidTiago Bencardino
 
Android - Programação para dispositivos móveis (Aula 2)
Android - Programação para dispositivos móveis (Aula 2)Android - Programação para dispositivos móveis (Aula 2)
Android - Programação para dispositivos móveis (Aula 2)Ricardo Longa
 
Minicurso Android Ronildo Oliveira
Minicurso Android  Ronildo OliveiraMinicurso Android  Ronildo Oliveira
Minicurso Android Ronildo OliveiraRonildo Oliveira
 
Curso de Android - aula 2
Curso de Android - aula 2Curso de Android - aula 2
Curso de Android - aula 2Jose Berardo
 
Desenvolvendo para Android
Desenvolvendo para AndroidDesenvolvendo para Android
Desenvolvendo para AndroidClaudio Pereira
 
Aula05 android persistencia
Aula05 android persistenciaAula05 android persistencia
Aula05 android persistenciaRoberson Alves
 
Java programação orientada a objetos
Java   programação orientada a objetosJava   programação orientada a objetos
Java programação orientada a objetosPaulo Carvalho
 
Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2Matheus Calegaro
 

Was ist angesagt? (19)

Desenvolvimento de Apps e Games para Android - Parte 5
Desenvolvimento de Apps e Games para Android - Parte 5Desenvolvimento de Apps e Games para Android - Parte 5
Desenvolvimento de Apps e Games para Android - Parte 5
 
Apresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaApresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno Cotta
 
Fragmentos
FragmentosFragmentos
Fragmentos
 
Introdução ao Android (minicurso 4h)
Introdução ao Android (minicurso 4h)Introdução ao Android (minicurso 4h)
Introdução ao Android (minicurso 4h)
 
Android Aula 5
Android Aula 5Android Aula 5
Android Aula 5
 
Aula 05/06 (Service)
Aula 05/06 (Service)Aula 05/06 (Service)
Aula 05/06 (Service)
 
Computação Móvel 2012.2 - Android
Computação Móvel 2012.2 - AndroidComputação Móvel 2012.2 - Android
Computação Móvel 2012.2 - Android
 
Android - Programação para dispositivos móveis (Aula 2)
Android - Programação para dispositivos móveis (Aula 2)Android - Programação para dispositivos móveis (Aula 2)
Android - Programação para dispositivos móveis (Aula 2)
 
J query basico
J query basicoJ query basico
J query basico
 
Minicurso Android Ronildo Oliveira
Minicurso Android  Ronildo OliveiraMinicurso Android  Ronildo Oliveira
Minicurso Android Ronildo Oliveira
 
Plataforma Android
Plataforma AndroidPlataforma Android
Plataforma Android
 
POO - 21 - Java e Banco de Dados
POO - 21 - Java e Banco de DadosPOO - 21 - Java e Banco de Dados
POO - 21 - Java e Banco de Dados
 
Java swing
Java swingJava swing
Java swing
 
Curso de Android - aula 2
Curso de Android - aula 2Curso de Android - aula 2
Curso de Android - aula 2
 
Desenvolvendo para Android
Desenvolvendo para AndroidDesenvolvendo para Android
Desenvolvendo para Android
 
Mvc delphi
Mvc delphiMvc delphi
Mvc delphi
 
Aula05 android persistencia
Aula05 android persistenciaAula05 android persistencia
Aula05 android persistencia
 
Java programação orientada a objetos
Java   programação orientada a objetosJava   programação orientada a objetos
Java programação orientada a objetos
 
Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2
 

Ähnlich wie Intent, Broadcast Receiver e Notifications

Android app communication
Android app communicationAndroid app communication
Android app communicationEloi Júnior
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4Jose Berardo
 
Curso de android
Curso de androidCurso de android
Curso de androidflaviokreis
 
Android exemplo-calculadora
Android exemplo-calculadoraAndroid exemplo-calculadora
Android exemplo-calculadoraRui Nunes
 
Primeiros passos para o novo desenvolvedor android
Primeiros passos para o novo desenvolvedor androidPrimeiros passos para o novo desenvolvedor android
Primeiros passos para o novo desenvolvedor androidMessias Batista
 
Aula 03 - Trabalhando com Intents, datePicker e Classes de terceiros
Aula 03 - Trabalhando com Intents, datePicker e Classes de terceirosAula 03 - Trabalhando com Intents, datePicker e Classes de terceiros
Aula 03 - Trabalhando com Intents, datePicker e Classes de terceirosHelton Ritter
 
Cloud 2 Device Message Framework - AndroidRec
Cloud 2 Device Message Framework - AndroidRecCloud 2 Device Message Framework - AndroidRec
Cloud 2 Device Message Framework - AndroidRecAntonio Marin Neto
 
google maps api - v1
 google maps api - v1 google maps api - v1
google maps api - v1Lucas Aquiles
 
Android Wear: Expandindo as funcionalidades do seu Android
Android Wear: Expandindo as funcionalidades do seu AndroidAndroid Wear: Expandindo as funcionalidades do seu Android
Android Wear: Expandindo as funcionalidades do seu AndroidHeider Lopes
 
SESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidSESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidRafael Sakurai
 
Desenvolvimento android p2
Desenvolvimento android p2Desenvolvimento android p2
Desenvolvimento android p2George Nunes
 
Desenvolvimento de Aplicações para Dispositivos Móveis - Android Studio - Par...
Desenvolvimento de Aplicações para Dispositivos Móveis - Android Studio - Par...Desenvolvimento de Aplicações para Dispositivos Móveis - Android Studio - Par...
Desenvolvimento de Aplicações para Dispositivos Móveis - Android Studio - Par...Elmano Cavalcanti
 
Techdays 2010 - Monetizing Windows Phone applications
Techdays 2010 - Monetizing Windows Phone applicationsTechdays 2010 - Monetizing Windows Phone applications
Techdays 2010 - Monetizing Windows Phone applicationsNuno Luz
 
Phonegap - Framework Mobile
Phonegap - Framework MobilePhonegap - Framework Mobile
Phonegap - Framework MobileIldyone Martins
 
Android26.05
Android26.05Android26.05
Android26.05guisester
 

Ähnlich wie Intent, Broadcast Receiver e Notifications (20)

Android app communication
Android app communicationAndroid app communication
Android app communication
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4
 
Curso de android
Curso de androidCurso de android
Curso de android
 
Android Aula 3
Android Aula 3Android Aula 3
Android Aula 3
 
Android exemplo-calculadora
Android exemplo-calculadoraAndroid exemplo-calculadora
Android exemplo-calculadora
 
Primeiros passos para o novo desenvolvedor android
Primeiros passos para o novo desenvolvedor androidPrimeiros passos para o novo desenvolvedor android
Primeiros passos para o novo desenvolvedor android
 
Aula 03 - Trabalhando com Intents, datePicker e Classes de terceiros
Aula 03 - Trabalhando com Intents, datePicker e Classes de terceirosAula 03 - Trabalhando com Intents, datePicker e Classes de terceiros
Aula 03 - Trabalhando com Intents, datePicker e Classes de terceiros
 
Cloud 2 Device Message Framework - AndroidRec
Cloud 2 Device Message Framework - AndroidRecCloud 2 Device Message Framework - AndroidRec
Cloud 2 Device Message Framework - AndroidRec
 
google maps api - v1
 google maps api - v1 google maps api - v1
google maps api - v1
 
Android Wear: Expandindo as funcionalidades do seu Android
Android Wear: Expandindo as funcionalidades do seu AndroidAndroid Wear: Expandindo as funcionalidades do seu Android
Android Wear: Expandindo as funcionalidades do seu Android
 
Apostilaandroidfatecnormal
ApostilaandroidfatecnormalApostilaandroidfatecnormal
Apostilaandroidfatecnormal
 
Apresentação Google Android
Apresentação Google AndroidApresentação Google Android
Apresentação Google Android
 
SESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidSESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao Android
 
Desenvolvimento android p2
Desenvolvimento android p2Desenvolvimento android p2
Desenvolvimento android p2
 
Desenvolvimento de Aplicações para Dispositivos Móveis - Android Studio - Par...
Desenvolvimento de Aplicações para Dispositivos Móveis - Android Studio - Par...Desenvolvimento de Aplicações para Dispositivos Móveis - Android Studio - Par...
Desenvolvimento de Aplicações para Dispositivos Móveis - Android Studio - Par...
 
Techdays 2010 - Monetizing Windows Phone applications
Techdays 2010 - Monetizing Windows Phone applicationsTechdays 2010 - Monetizing Windows Phone applications
Techdays 2010 - Monetizing Windows Phone applications
 
Introdução ao Android
Introdução ao AndroidIntrodução ao Android
Introdução ao Android
 
Phonegap - Framework Mobile
Phonegap - Framework MobilePhonegap - Framework Mobile
Phonegap - Framework Mobile
 
Android26.05
Android26.05Android26.05
Android26.05
 
Curso Básico Android - Aula 05
Curso Básico Android - Aula 05Curso Básico Android - Aula 05
Curso Básico Android - Aula 05
 

Mehr von Gustavo Henrique Rodrigues Pinto Tomas

Mehr von Gustavo Henrique Rodrigues Pinto Tomas (7)

[Status Report 11/06] Uma arquitetura para Smart Cities baseada na Internet o...
[Status Report 11/06] Uma arquitetura para Smart Cities baseada na Internet o...[Status Report 11/06] Uma arquitetura para Smart Cities baseada na Internet o...
[Status Report 11/06] Uma arquitetura para Smart Cities baseada na Internet o...
 
O que o mercado espera de um [recém formado | formando]?
O que o mercado espera de um [recém formado | formando]?O que o mercado espera de um [recém formado | formando]?
O que o mercado espera de um [recém formado | formando]?
 
Uma arquitetura para Smart Cities baseada em Internet of Things - Status Report
Uma arquitetura para Smart Cities baseada em Internet of Things - Status ReportUma arquitetura para Smart Cities baseada em Internet of Things - Status Report
Uma arquitetura para Smart Cities baseada em Internet of Things - Status Report
 
Internet of Things and Smart Cities
Internet of Things and Smart CitiesInternet of Things and Smart Cities
Internet of Things and Smart Cities
 
Avaliacao de particao vs avaliacao de clusters wci 2010
Avaliacao de particao vs avaliacao de clusters  wci 2010Avaliacao de particao vs avaliacao de clusters  wci 2010
Avaliacao de particao vs avaliacao de clusters wci 2010
 
Eucalyptus uma plataforma de cloud computing para qualquer tipo de usuário - ...
Eucalyptus uma plataforma de cloud computing para qualquer tipo de usuário - ...Eucalyptus uma plataforma de cloud computing para qualquer tipo de usuário - ...
Eucalyptus uma plataforma de cloud computing para qualquer tipo de usuário - ...
 
Eucalyptus uma plataforma de cloud computing para qualquer tipo de usuário
Eucalyptus uma plataforma de cloud computing para qualquer tipo de usuárioEucalyptus uma plataforma de cloud computing para qualquer tipo de usuário
Eucalyptus uma plataforma de cloud computing para qualquer tipo de usuário
 

Kürzlich hochgeladen

Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdfLeloIurk1
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfHELENO FAVACHO
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfHELENO FAVACHO
 
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇJaineCarolaineLima
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdfAna Lemos
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
Bloco de português com artigo de opinião 8º A, B 3.docx
Bloco de português com artigo de opinião 8º A, B 3.docxBloco de português com artigo de opinião 8º A, B 3.docx
Bloco de português com artigo de opinião 8º A, B 3.docxkellyneamaral
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfHELENO FAVACHO
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....LuizHenriquedeAlmeid6
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfHELENO FAVACHO
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéisines09cachapa
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfFrancisco Márcio Bezerra Oliveira
 

Kürzlich hochgeladen (20)

Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
 
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdf
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
Bloco de português com artigo de opinião 8º A, B 3.docx
Bloco de português com artigo de opinião 8º A, B 3.docxBloco de português com artigo de opinião 8º A, B 3.docx
Bloco de português com artigo de opinião 8º A, B 3.docx
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéis
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 

Intent, Broadcast Receiver e Notifications

  • 1. Intent, Broadcast Receiver e Notifications Gustavo Henrique Rodrigues Pinto Tomas gustavo.rodrigues@cesar.org.br
  • 2. Agenda • Intent – Intent Filter – Desafio 1 – Desafio 2 • Broadcast Receiver – Desafio 3 • Notifications – Desafio 4 16/02/2012 2
  • 3. Intent • Comunicação de activities, services e broadcast receiver; • Inicia apenas uma ação; • Falicita a comunicação em uma mesma aplicação e entre aplicações; • Envia e recebe dados (tipos primitivos, objetos serializáveis...). 16/02/2012 3
  • 4. Intent(2) • Exemplo: Intent it = new Intent(this, ViewFormActivity.class); it.putExtra(ViewFormActivity.NAME_INTENT, name); it.putExtra(ViewFormActivity.ADDRESS_INTENT, adress); it.putExtra(ViewFormActivity.AGE_INTENT, age); it.putExtra(ViewFormActivity.USER_INTENT, user); startActivity(it); Boas Práticas: Ao setar a key em um método putExtra, utilize sempre constantes definidas como public na activity de destino 16/02/2012 4
  • 5. Intent(3) • Utilizando intents é possível invocar outras aplicações através das respectivas actions. • Exemplos: – Intent.ACTION_CALL: faz uma ligação; – Intent.ACTION_DIAL: abre o aplicativo default de dial; – Intent.ACTION_MAIN: • CATEGORY_APP_EMAIL: abre o aplicativo de email; • CATEGORY_APP_BROWSER: abre o browser; • ATEGORY_APP_CONTACTS abre o aplicativo de calendario; 16/02/2012 5
  • 6. Intent Filter • Mecanismo alternativo de invocar uma activity: <activity android:name=“MInhaActivity" android:label="@string/app_name" > <intent-filter> <action android:name=“ABRA_MINHA_ACTIVITY" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> • Android fica ouvindo um intent com a ação ABRA_MINHA_ACTIVITY.Assim que receber invocará MinhaActivity. 16/02/2012 6
  • 7. Desafio 1 - Intent • Criar uma aplicação com duas telas: – A primeira será um formulário com os campos nome, endereço e idade com um botão “Enviar”. Quando o usuário clicar no botão as informações devem ser enviadas para a segunda activity; – A segunda activity deve apenas receber os dados e exibir na tela; Boas Práticas: Ao definir o id de um componente, utilize: android:id=“@+idNOMEDESCRITIVO/...” na qual NOMEDESCRITIVO pode ser um label para a activity 16/02/2012 7
  • 8. Desafio 2: Intent • Alterar a aplicação anterior para enviar as informações a partir de uma classe chamada Form, com as informações do formulário. Através de um intent é possível enviar objetos serializáveis 16/02/2012 8
  • 9. BroadCast Receiver • Permitir que a sua aplicação fique “ouvindo” intents iniciados por qualquer aplicativo; • Declaração no AndroidManifest.xml: </application> <receiver android:name="ReceiverSample"> <intent-filter> <action android:name="android.intent.action.PHONE_STATE“ /> </intent-filter> </receiver> </application> <uses-permission android:name="android.permission.CALL_PHONE"/> <uses-permission android:name="android.permission.READ_PHONE_STATE"/> 16/02/2012 9
  • 10. BroadCast Receiver • Quanto algum aplicativo enviar um intent do tipo PHONE_STATE, será chamado o método onReceive() da classe ReceiverSample; • ReceiverSample deve estender de BroadcastReceiver; public class ReceiverSample extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { } } 16/02/2012 10
  • 11. Desafio 3: Broadcast Receiver • Alterar a aplicação Formulário para ao receber uma chamada telefônica, interceptar e logar o numero do telefone que esta ligando; Não se esquece de declarar a permissão de android.permission.READ_PHONE_STATE para ler as alterações de estado do telefone 16/02/2012 11
  • 12. Notifications • Mecanismo de feedback imediato ao usuário; • Utilizado quando algum processamento em background precisa de alguma iteração com o usuário; • Mais utilizado: Status Bar 16/02/2012 12
  • 13. Notifications: Status Bar String ns = Context.NOTIFICATION_SERVICE; NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns); CharSequence tickerText = "New call captured"; Notification notification = new Notification(R.drawable.ic_launcher, tickerText, when); CharSequence contentTitle = "Phone Number"; CharSequence contentText = “Content message”; Intent notificationIntent = new Intent(this, FormAPKActivity.class); PendingIntent contentIntent = PendingIntent.getActivity(c, 0, notificationIntent, 0); notification.setLatestEventInfo(this, contentTitle, contentText, contentIntent); mNotificationManager.notify(HELLO_ID, notification); 16/02/2012 13
  • 14. Desafio 4: Status Bar • Alterar a aplicação desenvolvida para assim que receber uma ligação notificar o usuário usando Status Bar com o número de telefone; Utilize o BroadcastReceiver criado no desafio anterior. 16/02/2012 14
  • 15. Obrigado! Gustavo Henrique Rodrigues Pinto Tomas Email: gustavo.rodrigues@cesar.org.br Twitter: @gustahrodrigues Código fonte disponível em: http://bit.ly/xGrlTW 16/02/2012 15