首先,似乎确实没有很好的方法来测试这个,但我预计在实际设备上发生的错误是我在模拟器中看不到的,特别是在网络和/或Wifi中丢失的网络访问在Android中下载文件或JSON / XML数据。具体来说,我想处理下载中期的情况。
首先,我很好奇在这种情况下会抛出什么异常。我认为这将是一个IO异常,但我不完全确定。如果它收到至少一些数据,我不一定确定是否会抛出该异常?
接下来我不确定如何处理这种情况?使用程序在一段时间后恢复下载或超时?有没有人有这方面处理这种情况的经验可以指向我一个好的方向?
此外,还有哪些其他错误可能是明智的预期Http?
感谢。
答案 0 :(得分:0)
假设您正在使用execute方法,它将按docs抛出IOException。处理这种情况的最简单方法是捕获异常,清除可能已存储的任何临时数据,并通知用户他/她需要重新下载它是什么。
如果这不是用户启动的下载,您的应用可以定期重试。您还应始终为连接设置一些超时。
您可能想在模拟器中尝试的一件事是禁用运行它的计算机的网络连接。应该有办法关闭模拟器的网络连接,虽然我不太熟悉它。