Receba em primeira mão o conteúdo exclusivo do Blog, além de promoções de livros e cursos de programação. Você receberá um email de confirmação. Somente depois de confirmar é que poderei lhe enviar o conteúdo exclusivo por email.

Email inválido.
Blog /Android /BroadcastReceiver no Android, Executando Tarefas no Background

BroadcastReceiver no Android, Executando Tarefas no Background

Vinícius Thiengo16/01/2014, Quinta-feira, às 18h
(5778) (14) (33) (1)
Go-ahead
"Construa uma voz e uma opinião em primeiro lugar e, em seguida, se essas ressoam com o público, então você vai ter uma audiência."
Adam Carolla
Código limpo
Capa do livro Refatorando Para Programas Limpos
TítuloRefatorando Para Programas Limpos
CategoriaEngenharia de Software
AutorVinícius Thiengo
Edição
Ano2017
Capítulos46
Páginas598
Comprar Livro
Conteúdo Exclusivo
Receba em primeira mão o conteúdo exclusivo do Blog, além de promoções de livros e cursos de programação.
Email inválido

Opa!, Blz?

Nesse vídeo aprenseto e executo uma das classes mais importantes do Android, a BroadcastReceiver. O nome já diz muito o que ele é, mas enfim, essa classe permite que nossa APP, mesmo quando não em execução no dispositivo do usuário, execute tarefas na "surdina", por exemplo: atualizar um banca de dados interno de nossa APP sem que o usuário saiba. Essa classe é muito utilizada juntamente com as classes Service e Notification do Android.

Note que a classe BroadcastReceiver não é a entidade a se utilizar quando falamos em processamentos que podem levar mais de 10 segundos, claro que não é a classe a se utilizar efetivamente para realizar essa tarefa, mas sim para chamar um service que realizará essa tarefa acima dos 10 segundos de duração. Fique atento também para não abrir thread e conexões com a Internet dentro de um BroadcastReceiver, pois muito provavelmente essas podem extrapolar os 10 segundos e assim o Android não vai perdoar, aniquilando esses processos. Mas enfim, vou evitar mais delongas e deixar você assitir ao vídeo.

Se você não conhece ainda as classes Intent e Log (LogCat) e o ciclo de vida de uma Activity, os links abaixo são de posts que fiz falando sobre esses:

Ciclo de Vida de Uma Atividade no Android

Entendendo e Utilizando IntentFilter no Android

Entendendo e Utilizando o a Classe Log Com o LogCat no Android

Classe Intent e o Conceito de Pilha em Android

O link para download do projeto se encontra logo abaixo no post.

Página da classe BroadcastReceiver no site oficial do Android

Obs. : Foi inevitável os erros com o terceiro BrodcastReceiver no vídeo, preferi não remove-los pois foram corrigidos no vídeo mesmo (já tinha treinado, mas infelizmente... ocorreu).

Vlw

Receba em primeira mão o conteúdo exclusivo do Blog, além de promoções de livros e cursos de programação.
Email inválido

Relacionado

TextToSpeech: Fazendo Sua APP Android FalarTextToSpeech: Fazendo Sua APP Android FalarAndroid
onSaveInstanceState, Bitmap e Serializable no Android. CorreçãoonSaveInstanceState, Bitmap e Serializable no Android. CorreçãoAndroid
Acessando Imagens do SDCard e Colocando na APP AndroidAcessando Imagens do SDCard e Colocando na APP AndroidAndroid
Simples Formulário na APP Android Comunicando com Servidor Web PHPSimples Formulário na APP Android Comunicando com Servidor Web PHPAndroid

Compartilhar

Comentários Facebook (8)

Comentários Blog (6)

Para código / script, coloque entre [code] e [/code] para receber marcação especifica.
Forneça seu nome válido.
Forneça seu email válido.
Forneça o comentário.
Enviando, aguarde...
ARMANDO SOARES (1) (0)
14/12/2016, Quarta-feira, às 17h
bom dia, vc comentou de o servidor mandar msg para os app cadastrados no seu banco de dados, que vc utiliza quando tem novo post, com o recurso GcN  do Google, eu preciso fazer esta mesma proposta para um projeto meu poderia me enviar o projeto, ou dicas como fazer. muito obrigado Armando.
Responder
Vinícius Thiengo (0) (0)
14/12/2016, Quarta-feira, às 18h
Armando, tudo bem?

Dê uma olhada nos itens 4, 5 e 6 da lista de itens desse tópico: http://www.thiengo.com.br/estudando-android-lista-de-conteudos-do-blog#title-10 (Alertas, notificações e push message).

Com isso terá o suficiente para implementar o mesmo que informei aqui, porém em seu projeto.

Veja também se o OneSignal é uma possibilidade para seu projeto, pois ele é ainda mais simples de implementar. Segue link do artigo dele:

http://www.thiengo.com.br/onesignal-para-notificacoes-em-massa-no-android

Abraço.
Responder
13/11/2014, Quinta-feira, às 03h
Exite uma versão mínima do android para a utilização do broadcast receiver?
Responder
Vinícius Thiengo (1) (0)
13/11/2014, Quinta-feira, às 03h
API 1 (http://developer.android.com/reference/android/content/BroadcastReceiver.html)
Responder
07/09/2014, Domingo, às 14h
Oi, tudo bem? Me tira uma dúvida? É o seguinte, estou capturando o momento em que uma ligação é iniciada (não é recebida). Gostaria de saber, como eu capturo o número digitado pelo usuário? O método onReceive está assim:

@Override
public void onReceive(Context ctx, Intent it) {

String estado = it.getStringExtra("state");

String num =  it.getStringExtra("incoming_number");

String msg = null;

if (estado.equals("OFFHOOK"))
    msg = "Em ligação." + num;

Toast.makeText(ctx, msg,   Toast.LENGTH_LONG).show();
}

Funciona, mas o número vem null.

Muito bom o vídeo, você tem uma ótima didática.
Responder
Vinícius Thiengo (0) (0)
07/09/2014, Domingo, às 14h
Fala Rafael, blz?
Então, tb nunca fiz um script assim, mas encontrei duas publicações (com respostas) no stackoverflow que acho que podem lhe ajudar. Abraço.

http://stackoverflow.com/questions/12659536/incoming-number-during-a-call-in-android

http://stackoverflow.com/questions/6388168/how-to-get-phone-number-of-the-person-im-dialing

Veja a primeira resposta de cada link.
Responder