From 0b095b9b112ef31494deaf369e6a7541d24157c8 Mon Sep 17 00:00:00 2001 From: laoyuyu <511455842@qq.com> Date: Mon, 8 Oct 2018 08:58:30 +0800 Subject: [PATCH] fix bug https://github.com/AriaLyy/Aria/issues/311 --- .../aria/core/download/BaseNormalTarget.java | 12 +++++-- DEV_LOG.md | 7 ++++ README.md | 33 ++++++++++++------- .../simple/download/SingleTaskActivity.java | 8 ++--- build.gradle | 2 +- 5 files changed, 42 insertions(+), 20 deletions(-) diff --git a/Aria/src/main/java/com/arialyy/aria/core/download/BaseNormalTarget.java b/Aria/src/main/java/com/arialyy/aria/core/download/BaseNormalTarget.java index 2873900a..538de167 100644 --- a/Aria/src/main/java/com/arialyy/aria/core/download/BaseNormalTarget.java +++ b/Aria/src/main/java/com/arialyy/aria/core/download/BaseNormalTarget.java @@ -164,9 +164,15 @@ abstract class BaseNormalTarget //设置文件保存路径,如果新文件路径和旧文件路径不同,则修改路径 if (!filePath.equals(mEntity.getDownloadPath())) { - if (DbEntity.checkDataExist(DownloadEntity.class, "downloadPath=?", filePath) && !forceDownload) { - ALog.e(TAG, "下载失败,保存路径【" + filePath + "】已经被其它任务占用,请设置其它保存路径"); - return false; + if (DbEntity.checkDataExist(DownloadEntity.class, "downloadPath=?", filePath)) { + if (!forceDownload) { + ALog.e(TAG, "下载失败,保存路径【" + filePath + "】已经被其它任务占用,请设置其它保存路径"); + return false; + }else { + ALog.d(TAG, "保存路径【" + filePath + "】已经被其它任务占用,当前任务将覆盖该路径的文件"); + DbEntity.deleteData(DownloadEntity.class, "downloadPath=?", filePath); + mTaskEntity = TEManager.getInstance().getTEntity(DownloadTaskEntity.class, url); + } } File oldFile = new File(mEntity.getDownloadPath()); File newFile = new File(filePath); diff --git a/DEV_LOG.md b/DEV_LOG.md index 717d4384..c91242bb 100644 --- a/DEV_LOG.md +++ b/DEV_LOG.md @@ -11,6 +11,13 @@ //.setParams(Map) // 传递多参数 .start(); ``` + - 增加强制设置文件路径的api, https://github.com/AriaLyy/Aria/issues/311 + ``` + Aria.download(SingleTaskActivity.this) + .load(DOWNLOAD_URL) + .setFilePath(path, true) // true表示忽略路径是否被占用 + .start(); + ``` + v_3.5 - fix bug https://github.com/AriaLyy/Aria/issues/302 - fix bug https://github.com/AriaLyy/Aria/issues/283 diff --git a/README.md b/README.md index f7a83467..6a4e9f26 100644 --- a/README.md +++ b/README.md @@ -32,8 +32,8 @@ Aria有以下特点: [![Download](https://api.bintray.com/packages/arialyy/maven/AriaApi/images/download.svg)](https://bintray.com/arialyy/maven/AriaApi/_latestVersion) [![Download](https://api.bintray.com/packages/arialyy/maven/AriaCompiler/images/download.svg)](https://bintray.com/arialyy/maven/AriaCompiler/_latestVersion) ```java -compile 'com.arialyy.aria:aria-core:3.5' -annotationProcessor 'com.arialyy.aria:aria-compiler:3.5' +compile 'com.arialyy.aria:aria-core:3.5.1' +annotationProcessor 'com.arialyy.aria:aria-compiler:3.5.1' ``` 如果出现android support,请将 `compile 'com.arialyy.aria:aria-core:'`替换为 ``` @@ -101,16 +101,25 @@ protected void onCreate(Bundle savedInstanceState) { ### 版本日志 - + v_3.5 - - fix bug https://github.com/AriaLyy/Aria/issues/302 - - fix bug https://github.com/AriaLyy/Aria/issues/283 - - fix bug https://github.com/AriaLyy/Aria/issues/305 - - fix bug https://github.com/AriaLyy/Aria/issues/306 - - fix bug https://github.com/AriaLyy/Aria/issues/272 (现在,停止所有任务,未开始的任务状态将变为停止) - - fix bug https://github.com/AriaLyy/Aria/issues/277 - - fix bug https://github.com/AriaLyy/Aria/issues/303 - - 优化停止任务的速度 - - 修复组合任务修改子任务文件名失败的问题 ++ v_3.5.1 + - 优化`taskExists`方法 + - 添加`post`参数请求支持 + ```java + Aria.download(SingleTaskActivity.this) + .load(DOWNLOAD_URL) + .setFilePath(path) + .asPost() // post请求 + .setParam("key", "value") //传递参数 + //.setParams(Map) // 传递多参数 + .start(); + ``` + - 增加强制设置文件路径的api, https://github.com/AriaLyy/Aria/issues/311 + ``` + Aria.download(SingleTaskActivity.this) + .load(DOWNLOAD_URL) + .setFilePath(path, true) // true表示忽略路径是否被占用 + .start(); + ``` [更多版本记录](https://github.com/AriaLyy/Aria/blob/master/DEV_LOG.md) diff --git a/app/src/main/java/com/arialyy/simple/download/SingleTaskActivity.java b/app/src/main/java/com/arialyy/simple/download/SingleTaskActivity.java index 5ba749c1..1fcfd4d3 100644 --- a/app/src/main/java/com/arialyy/simple/download/SingleTaskActivity.java +++ b/app/src/main/java/com/arialyy/simple/download/SingleTaskActivity.java @@ -49,7 +49,7 @@ public class SingleTaskActivity extends BaseActivity { private static final String DOWNLOAD_URL = //"http://kotlinlang.org/docs/kotlin-docs.pdf"; //"https://atom-installer.github.com/v1.13.0/AtomSetup.exe?s=1484074138&ext=.exe"; - //"http://static.gaoshouyou.com/d/22/94/822260b849944492caadd2983f9bb624.apk"; + "http://static.gaoshouyou.com/d/22/94/822260b849944492caadd2983f9bb624.apk"; //"https://yizi-kejian.oss-cn-beijing.aliyuncs.com/qimeng/package1/qmtable11.zip"; //"http://rs.0.gaoshouyou.com/d/04/1e/400423a7551e1f3f0eb1812afa1f9b44.apk"; //"http://58.210.9.131/tpk/sipgt//TDLYZTGH.tpk"; //chunked 下载 @@ -58,7 +58,7 @@ public class SingleTaskActivity extends BaseActivity { //"https://d.pcs.baidu.com/file/a02c89a2d479d4fd2756f3313d42491d?fid=4232431903-250528-1114369760340736&dstime=1525491372&rt=sh&sign=FDtAERVY-DCb740ccc5511e5e8fedcff06b081203-3C13vkOkuk4TqXvVYW05zj1K0ao%3D&expires=8h&chkv=1&chkbd=0&chkpc=et&dp-logid=8651730921842106225&dp-callid=0&r=165533013"; //"http://apk500.bce.baidu-mgame.com/game/67000/67734/20170622040827_oem_5502845.apk?r=1"; //"https://dl.genymotion.com/releases/genymotion-2.12.1/genymotion-2.12.1-vbox.exe"; - "http://9.9.9.59:5000/download/CentOS-7-x86_64-Minimal-1804.iso"; + //"http://9.9.9.59:5000/download/CentOS-7-x86_64-Minimal-1804.iso"; @Bind(R.id.start) Button mStart; @Bind(R.id.stop) Button mStop; @Bind(R.id.cancel) Button mCancel; @@ -262,8 +262,8 @@ public class SingleTaskActivity extends BaseActivity { //.addHeader("Cookie", "BAIDUID=648E5FF020CC69E8DD6F492D1068AAA9:FG=1; BIDUPSID=648E5FF020CC69E8DD6F492D1068AAA9; PSTM=1519099573; BD_UPN=12314753; locale=zh; BDSVRTM=0") //.useServerFileName(true) //.setRequestMode(RequestEnum.GET) - .setFilePath(path) - .asPost().setParams("key", "value") + .setFilePath(path, false) + //.asPost().setParam("key", "value") //.setExtendField("{\n" // + "\"id\":\"你的样子\"\n< > " // + "}") diff --git a/build.gradle b/build.gradle index 365135f9..cf51dcf8 100644 --- a/build.gradle +++ b/build.gradle @@ -39,7 +39,7 @@ task clean(type: Delete) { ext { userOrg = 'arialyy' groupId = 'com.arialyy.aria' - publishVersion = '3.5' + publishVersion = '3.5.1' // publishVersion = '1.0.3' //FTP插件 repoName='maven' desc = 'android 下载框架'