2013-12-19 102 views
0

在我的Android应用程序中,我有IntentService正在上传一些东西。互联网连接重试的策略

有时候没有互联网连接或连接质量太差,无法上传。在这些情况下,service需要在某个时候重试。我有BroadcastReceiver,它在网络连接发生变化或一段时间后(如果有连接但上传失败)唤醒我的service

唤醒这样的最佳策略是什么upload service?我应该什么时候等多少?我应该在收到网络更改后立即醒来service吗?

回答

2

我相信来自Google员工的谈话(如Reto Meier)建议通过将闲置时间加倍(或其他因素)来创建一个系统,在该系统中重新尝试需要的时间越来越长。

所以,你第一次等待...... 5秒,然后10,20,40,80 ....

+0

是的,但是连接有什么变化?例如,如果用户每5分钟更改连接类型,并且连接总是太差,则应用程序会在5,10,20,40,80,160,5,10,20,40等等秒后询问。 – Ari

+0

我认为这是假设成功建立连接时重置重试率。 – cYrixmorten