Se você vai utilizar a cada poucos segundos, porque não um Handler?
Eu acredito que o WhatsApp, assim como qualquer outro aplicativo, tenham alguns Receivers cadastrados, como para conexão de dados, presença do usuário (USER_PRESENT), alarmes, algo nesse sentido.
Isso não tem muito segredo, exceto em casos em que são utilizados mensagens PUSH, onde o servidor é que tenta enviar algum sinal para o cliente, tal como uma nova mensagem chegou, etc., assim o cliente poderia entender que a 'porta está aberta'.
Em Fri Jan 09 2015 at 11:09:51 AM, Gink Labrev <gink.labrev@gmail.com> escreveu:
-- @WilliamValeu. Faz sentido.A maioria dos exemplos que vejo em AlarmManager trabalham com escala de minutos ou horas. Neste caso, precisa ser no máximo, a cada poucos segundos. Isso drenaria a bateria ?Alguém aqui chutaria como o Whatsapp funciona em relação à isso ?Como este garante a entrega de mensagem mesmo após uma falha no envio.Em 9 de janeiro de 2015 10:51, William Lopes <williamlopes.dev@gmail.com> escreveu:Acredito que um alarme seria a melhor alternativa, a abordagem vai depender de cada caso. Você poderia, por exemplo, colocar um alarme com um delay crescente em caso de falha (tendo um limite e uma inteligência no delay, obviamente), ou em casos mais simples, tentar 3 vezes a cada 1, 3 ou 10 minutos.--Não existe a melhor forma de fazer isso, você deve ver sua necessidade e restrições, tal como: preciso que a mensagem seja enviada o quanto antes, preciso controlar o consumo da bateria, etc..
Em sábado, 3 de janeiro de 2015 01:45:39 UTC-2, Gink Labrev escreveu:Pessoal,Como o whatsApp fica tentando reenviar uma mensagem mesmo se ocorrer um erro ?Qual a melhor abordagem para isso ? AlarmManager + IntentService ?Abs,You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.--
You received this message because you are subscribed to a topic in the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/androidbrasil-dev/BqLqVlIaxEQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.






0 comentários:
Postar um comentário