我的应用程序需要下载大文件。一段时间后,我得到
java.net.SocketException: Connection timed out
我相信是因为该设备即将进入睡眠或wifi状态。
那么我该如何处理呢?我希望该用户无论花费多少时间都可以下载大文件。
使用以下命令完成文件下载:
HttpURLConnection con = (HttpURLConnection) new URL(uriToFile).openConnection();
con.connect();
FileOutputStream fileOutput = new FileOutputStream(file);
InputStream inputStream = con.getInputStream();
byte[] buffer = new byte[1024];
int bufferLength = 0;
while ((bufferLength = inputStream.read(buffer)) > 0) {
fileOutput.write(buffer, 0, bufferLength);
}
fileOutput.close();
谢谢。
最佳答案
您只能通过重试连接来处理它。您可以将默认连接超时降低约75秒,但不能提高默认值。