添加断点判断
This commit is contained in:
@ -14,7 +14,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.aria.core.task;
|
||||
|
||||
import android.content.Context;
|
||||
@ -30,7 +29,10 @@ import java.net.HttpURLConnection;
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.ProtocolException;
|
||||
import java.net.URL;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Properties;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
|
||||
@ -198,6 +200,7 @@ final class DownloadUtil implements IDownloadUtil {
|
||||
URL url = new URL(downloadUrl);
|
||||
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
|
||||
setConnectParam(conn);
|
||||
conn.setRequestProperty("Range", "bytes=" + 0 + "-");
|
||||
conn.setConnectTimeout(mConnectTimeOut * 4);
|
||||
conn.connect();
|
||||
int len = conn.getContentLength();
|
||||
@ -206,7 +209,9 @@ final class DownloadUtil implements IDownloadUtil {
|
||||
return;
|
||||
}
|
||||
int code = conn.getResponseCode();
|
||||
if (code == 200) {
|
||||
//https://zh.wikipedia.org/wiki/HTTP%E7%8A%B6%E6%80%81%E7%A0%81
|
||||
//206支持断点
|
||||
if (code == HttpURLConnection.HTTP_PARTIAL) {
|
||||
int fileLength = conn.getContentLength();
|
||||
//必须建一个文件
|
||||
CommonUtil.createFile(filePath);
|
||||
@ -296,6 +301,9 @@ final class DownloadUtil implements IDownloadUtil {
|
||||
mFixedThreadPool.execute(task);
|
||||
}
|
||||
}
|
||||
} else if (code == HttpURLConnection.HTTP_OK) {
|
||||
//在conn.setRequestProperty("Range", "bytes=" + 0 + "-");下,200为不支持断点状态
|
||||
Log.w(TAG, "该下载链接不支持断点下载");
|
||||
} else {
|
||||
failDownload("下载失败,返回码:" + code);
|
||||
}
|
||||
|
Reference in New Issue
Block a user