Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/217.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Internet连接重试策略_Android_Networking - Fatal编程技术网

Android Internet连接重试策略

Android Internet连接重试策略,android,networking,Android,Networking,在我的Android应用程序中,我有IntentService,它正在上传一些东西 有时没有互联网连接或连接质量太差,无法上传。在这些情况下,服务需要在某个时间重试。我有BroadcastReceiver,当网络连接发生变化或一段时间后(如果有连接但上传失败),它会唤醒我的服务 唤醒此类上传服务的最佳策略是什么?我应该什么时候等,多少钱?我是否应该在收到网络变更后立即唤醒服务?我相信来自谷歌员工的谈话,如Reto Meier,建议创建一个系统,通过将空闲时间加倍(或其他因素),使重新尝试的时间越

在我的Android应用程序中,我有
IntentService
,它正在上传一些东西

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


唤醒此类上传服务的最佳策略是什么?我应该什么时候等,多少钱?我是否应该在收到网络变更后立即唤醒服务?

我相信来自谷歌员工的谈话,如Reto Meier,建议创建一个系统,通过将空闲时间加倍(或其他因素),使重新尝试的时间越来越长


所以你第一次等待。。。5秒,然后是10、20、40、80……

是的,但是连接改变了怎么办?例如,如果用户每5分钟更改一次连接类型,并且连接总是太差,则应用程序会在5、10、20、40、80、160、5、10、20、40等秒后发出请求。我认为应该在成功建立连接时重置重试率。