Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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中从剩余百分比(第一次下载时停止)下载文件_Android_Url_Download - Fatal编程技术网

如何在android中从剩余百分比(第一次下载时停止)下载文件

如何在android中从剩余百分比(第一次下载时停止)下载文件,android,url,download,Android,Url,Download,我面临着从服务器下载zip文件的问题,通过使用Url连接,我可以下载一个文件,但我的要求是,每当我下载时,互联网连接可能会丢失,或者应用程序可能会因其他原因关闭。这一次我需要再次下载该文件,但不是从开始下载,这意味着如果开始下载,40%下载,然后连接,那么我需要再次从40%下载。 怎么做?我浏览了一下,但没有找到我的要求?请问e上有什么可以帮忙的吗 if(new File(filePath).exists()){ //ucon.disconnect();

我面临着从服务器下载zip文件的问题,通过使用Url连接,我可以下载一个文件,但我的要求是,每当我下载时,互联网连接可能会丢失,或者应用程序可能会因其他原因关闭。这一次我需要再次下载该文件,但不是从开始下载,这意味着如果开始下载,40%下载,然后连接,那么我需要再次从40%下载。 怎么做?我浏览了一下,但没有找到我的要求?请问e上有什么可以帮忙的吗

 if(new File(filePath).exists()){
                //ucon.disconnect();
             //   ucon.setAllowUserInteraction(true);
                ucon.setRequestMethod("GET");
                ucon.setRequestProperty("Range", "bytes=" + new File(filePath).length() + "-");
                inStream.skip(new File(filePath).length());
                ucon.connect();

            }

您应该使用HTTP协议的
Range
request来请求部分文件。 首先,您必须发送
HEAD
以查看与您交谈的服务器是否支持范围请求,方法是使用
Accept Ranges:bytes
header发送
HEAD
。 如果服务器支持它,它将返回
200 OK
响应,然后您可以安全地发送
GET
请求,其字节偏移量在
范围:10-100
头中


上述GET请求将向服务器查询从第10个字节到第100个字节的数据,如果请求成功,它将返回206个部分文档响应

i was set ucon.setRequestProperty(“Range”,“bytes=”+new File(filePath).length()+“-”;inStream.skip(新文件(filePath.length());它的投掷错误和我需要的出发点