Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] Garantir envio de dados

Valeu, Geovani.
Vou testar o SyncAdapter.


Em 20 de março de 2014 18:00, Geovani de Souza <geovanisouza92@gmail.com> escreveu:
Gink, pra isso existe também o SyncAdapter. Você pode deixar ele ser habilitado pelo usuário através de uma Account ou forçá-lo. Novamente, um BroadcastReceiver com intent NETWORK_CHANGED (se não me engano) poderia disparar o envio/recebimento.

Cada mensagem é uma transação isolada. Pense no conceito do ACID dos bancos de dados. O app tenta enviar. Se realmente tem um erro, ele registra a mensagem em log (opcional) e não altera o flag do registro. Se ele conseguir enviar com sucesso (o que através do HTTP é uma resposta "200 OK") vc altera a flag no registro e salva novamente, ou atualiza a interface.

No caso do servidor ficar novamente disponível e vc tiver mensagens locais ainda por enviar, vc faz uma consulta de todas as mensagens que estão com a flag "AGUARDANDO" por ordem cronológica (importante se a conversa tiver que ter sentido... :P) e envia uma por uma.

Vc pode iniciar isso em paralelo, colocando várias Threads ao mesmo tempo.

Parece muita coisa, mas no código se resume em algumas centenas de linhas...

--
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.

--
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.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário