DownloadUtil 重命名为 Aria,代码已重构,使用起来更加简便
This commit is contained in:
2
.idea/gradle.xml
generated
2
.idea/gradle.xml
generated
@ -9,8 +9,8 @@
|
||||
<option name="modules">
|
||||
<set>
|
||||
<option value="$PROJECT_DIR$" />
|
||||
<option value="$PROJECT_DIR$/Aria" />
|
||||
<option value="$PROJECT_DIR$/app" />
|
||||
<option value="$PROJECT_DIR$/downloadutil" />
|
||||
</set>
|
||||
</option>
|
||||
<option name="resolveModulePerSourceSet" value="false" />
|
||||
|
2
.idea/modules.xml
generated
2
.idea/modules.xml
generated
@ -2,9 +2,9 @@
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/Aria/Aria.iml" filepath="$PROJECT_DIR$/Aria/Aria.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/DownloadPrj.iml" filepath="$PROJECT_DIR$/DownloadPrj.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/downloadutil/downloadutil.iml" filepath="$PROJECT_DIR$/downloadutil/downloadutil.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
@ -8,7 +8,7 @@ android {
|
||||
minSdkVersion 9
|
||||
targetSdkVersion 23
|
||||
versionCode 58
|
||||
versionName "2.1.0"
|
||||
versionName "2.3.0"
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
@ -1,5 +1,5 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.arialyy.downloadutil">
|
||||
package="com.arialyy.aria">
|
||||
|
||||
<application
|
||||
android:allowBackup="true"
|
@ -13,10 +13,9 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package com.arialyy.downloadutil.core;
|
||||
package com.arialyy.aria.core;
|
||||
|
||||
import android.content.Context;
|
||||
import com.arialyy.downloadutil.core.scheduler.OnSchedulerListener;
|
||||
import com.arialyy.aria.core.scheduler.OnSchedulerListener;
|
||||
|
||||
/**
|
||||
* AM 接收器
|
@ -1,11 +1,10 @@
|
||||
package com.arialyy.downloadutil.core;
|
||||
package com.arialyy.aria.core;
|
||||
|
||||
import android.content.Context;
|
||||
import com.arialyy.downloadutil.core.command.CmdFactory;
|
||||
import com.arialyy.downloadutil.core.command.IDownloadCmd;
|
||||
import com.arialyy.downloadutil.core.scheduler.OnSchedulerListener;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.core.command.CmdFactory;
|
||||
import com.arialyy.aria.core.scheduler.OnSchedulerListener;
|
||||
import com.arialyy.aria.core.command.IDownloadCmd;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@ -19,6 +18,14 @@ public class AMTarget {
|
||||
this.receiver = receiver;
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加任务
|
||||
*/
|
||||
public void add() {
|
||||
receiver.manager.setCmd(
|
||||
CommonUtil.createCmd(receiver.obj, receiver.entity, CmdFactory.TASK_CREATE)).exe();
|
||||
}
|
||||
|
||||
/**
|
||||
* 开始下载
|
||||
*/
|
@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core;
|
||||
package com.arialyy.aria.core;
|
||||
|
||||
import android.annotation.TargetApi;
|
||||
import android.app.Activity;
|
@ -1,4 +1,4 @@
|
||||
package com.arialyy.downloadutil.core;
|
||||
package com.arialyy.aria.core;
|
||||
|
||||
import android.annotation.TargetApi;
|
||||
import android.app.Activity;
|
||||
@ -7,9 +7,9 @@ import android.app.Service;
|
||||
import android.content.Context;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import com.arialyy.downloadutil.core.command.CmdFactory;
|
||||
import com.arialyy.downloadutil.core.command.IDownloadCmd;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.core.command.CmdFactory;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import com.arialyy.aria.core.command.IDownloadCmd;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@ -45,6 +45,16 @@ import java.util.Set;
|
||||
return getTarget(obj);
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置同时下载的任务数
|
||||
*/
|
||||
public void setDownloadNum(int num){
|
||||
if (num <= 0){
|
||||
throw new IllegalArgumentException("下载任务数不能小于1");
|
||||
}
|
||||
mManager.getTaskQueue().setDownloadNum(num);
|
||||
}
|
||||
|
||||
/**
|
||||
* 停止所有正在执行的任务
|
||||
*/
|
@ -15,12 +15,12 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core;
|
||||
package com.arialyy.aria.core;
|
||||
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
import com.arialyy.downloadutil.orm.DbEntity;
|
||||
import com.arialyy.downloadutil.orm.Ignore;
|
||||
import com.arialyy.aria.orm.Ignore;
|
||||
import com.arialyy.aria.orm.DbEntity;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2015/12/25.
|
@ -14,16 +14,14 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core;
|
||||
package com.arialyy.aria.core;
|
||||
|
||||
import android.app.Application;
|
||||
import android.content.Context;
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.command.IDownloadCmd;
|
||||
import com.arialyy.downloadutil.core.queue.ITaskQueue;
|
||||
import com.arialyy.downloadutil.core.queue.DownloadTaskQueue;
|
||||
import com.arialyy.downloadutil.orm.DbEntity;
|
||||
import com.arialyy.downloadutil.orm.DbUtil;
|
||||
import com.arialyy.aria.core.queue.ITaskQueue;
|
||||
import com.arialyy.aria.orm.DbUtil;
|
||||
import com.arialyy.aria.core.command.IDownloadCmd;
|
||||
import com.arialyy.aria.core.queue.DownloadTaskQueue;
|
||||
import com.arialyy.aria.orm.DbEntity;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
@ -14,11 +14,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.command;
|
||||
package com.arialyy.aria.core.command;
|
||||
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/8/22.
|
@ -15,10 +15,10 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.command;
|
||||
package com.arialyy.aria.core.command;
|
||||
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/9/20.
|
||||
@ -40,6 +40,7 @@ class CancelCmd extends IDownloadCmd {
|
||||
task = mQueue.createTask(mTarget, mEntity);
|
||||
}
|
||||
if (task != null) {
|
||||
task.setmTargetName(mTarget.getClass().getName());
|
||||
mQueue.cancelTask(task);
|
||||
}
|
||||
}
|
@ -14,9 +14,9 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.command;
|
||||
package com.arialyy.aria.core.command;
|
||||
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
|
||||
/**
|
||||
* Created by Lyy on 2016/9/23.
|
||||
@ -152,7 +152,7 @@ public class CmdFactory {
|
||||
private StartCmd createStartCmd(Object target, DownloadEntity entity) {
|
||||
return new StartCmd(target, entity);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 创建启动下载命令
|
||||
*
|
@ -14,13 +14,13 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.command;
|
||||
package com.arialyy.aria.core.command;
|
||||
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.DownloadManager;
|
||||
import com.arialyy.downloadutil.core.queue.ITaskQueue;
|
||||
import com.arialyy.downloadutil.util.CheckUtil;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.core.DownloadManager;
|
||||
import com.arialyy.aria.core.queue.ITaskQueue;
|
||||
import com.arialyy.aria.util.CheckUtil;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/8/22.
|
@ -1,8 +1,8 @@
|
||||
package com.arialyy.downloadutil.core.command;
|
||||
package com.arialyy.aria.core.command;
|
||||
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/11/30.
|
||||
@ -27,6 +27,7 @@ class SingleCmd extends IDownloadCmd {
|
||||
} else {
|
||||
Log.w(TAG, "添加命令执行失败,【该任务已经存在】");
|
||||
}
|
||||
task.setmTargetName(mTarget.getClass().getName());
|
||||
mQueue.startTask(task);
|
||||
}
|
||||
}
|
@ -14,10 +14,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.command;
|
||||
package com.arialyy.aria.core.command;
|
||||
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/8/22.
|
||||
@ -39,6 +39,7 @@ class StartCmd extends IDownloadCmd {
|
||||
task = mQueue.createTask(mTarget, mEntity);
|
||||
}
|
||||
if (task != null) {
|
||||
task.setmTargetName(mTarget.getClass().getName());
|
||||
mQueue.startTask(task);
|
||||
}
|
||||
}
|
@ -15,11 +15,11 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.command;
|
||||
package com.arialyy.aria.core.command;
|
||||
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/9/20.
|
||||
@ -48,6 +48,7 @@ class StopCmd extends IDownloadCmd {
|
||||
Log.w(TAG, "停止命令执行失败,【调度器中没有该任务】");
|
||||
}
|
||||
} else {
|
||||
task.setmTargetName(mTarget.getClass().getName());
|
||||
mQueue.stopTask(task);
|
||||
}
|
||||
}
|
@ -14,17 +14,17 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.queue;
|
||||
package com.arialyy.aria.core.queue;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.queue.pool.CachePool;
|
||||
import com.arialyy.downloadutil.core.queue.pool.ExecutePool;
|
||||
import com.arialyy.downloadutil.core.scheduler.DownloadSchedulers;
|
||||
import com.arialyy.downloadutil.core.scheduler.IDownloadSchedulers;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.downloadutil.core.task.TaskFactory;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.queue.pool.CachePool;
|
||||
import com.arialyy.aria.core.queue.pool.ExecutePool;
|
||||
import com.arialyy.aria.core.scheduler.DownloadSchedulers;
|
||||
import com.arialyy.aria.core.scheduler.IDownloadSchedulers;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
import com.arialyy.aria.core.task.TaskFactory;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/8/17.
|
@ -15,9 +15,9 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.queue;
|
||||
package com.arialyy.aria.core.queue;
|
||||
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/8/16.
|
@ -15,9 +15,9 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.queue;
|
||||
package com.arialyy.aria.core.queue;
|
||||
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/8/14.
|
@ -14,11 +14,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.queue;
|
||||
package com.arialyy.aria.core.queue;
|
||||
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.scheduler.IDownloadSchedulers;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.scheduler.IDownloadSchedulers;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/8/16.
|
@ -15,13 +15,13 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.queue.pool;
|
||||
package com.arialyy.aria.core.queue.pool;
|
||||
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.downloadutil.core.queue.IPool;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.core.queue.IPool;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.LinkedBlockingQueue;
|
@ -15,13 +15,13 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.queue.pool;
|
||||
package com.arialyy.aria.core.queue.pool;
|
||||
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.queue.IPool;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import com.arialyy.aria.core.queue.IPool;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.ArrayBlockingQueue;
|
@ -14,16 +14,16 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.scheduler;
|
||||
package com.arialyy.aria.core.scheduler;
|
||||
|
||||
import android.os.Message;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.queue.ITaskQueue;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.downloadutil.core.queue.pool.ExecutePool;
|
||||
import com.arialyy.downloadutil.core.queue.DownloadTaskQueue;
|
||||
import com.arialyy.aria.core.queue.ITaskQueue;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
import com.arialyy.aria.core.queue.pool.ExecutePool;
|
||||
import com.arialyy.aria.core.queue.DownloadTaskQueue;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
@ -14,11 +14,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.scheduler;
|
||||
package com.arialyy.aria.core.scheduler;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Handler;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
|
||||
/**
|
||||
* Created by “AriaLyy@outlook.com” on 2016/11/2.
|
@ -1,6 +1,6 @@
|
||||
package com.arialyy.downloadutil.core.scheduler;
|
||||
package com.arialyy.aria.core.scheduler;
|
||||
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
|
||||
/**
|
||||
* Target处理任务监听
|
@ -15,7 +15,7 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.task;
|
||||
package com.arialyy.aria.core.task;
|
||||
|
||||
class DownloadListener implements IDownloadListener {
|
||||
|
@ -15,13 +15,13 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.task;
|
||||
package com.arialyy.aria.core.task;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.Log;
|
||||
import android.util.SparseArray;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
@ -15,7 +15,7 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.task;
|
||||
package com.arialyy.aria.core.task;
|
||||
|
||||
/**
|
||||
* 下载监听
|
@ -15,7 +15,7 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.task;
|
||||
package com.arialyy.aria.core.task;
|
||||
|
||||
/**
|
||||
* Created by “AriaLyy@outlook.com” on 2016/10/31.
|
@ -14,17 +14,17 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.task;
|
||||
package com.arialyy.aria.core.task;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
import android.os.Handler;
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.DownloadManager;
|
||||
import com.arialyy.downloadutil.core.scheduler.IDownloadSchedulers;
|
||||
import com.arialyy.downloadutil.core.scheduler.DownloadSchedulers;
|
||||
import com.arialyy.aria.core.DownloadManager;
|
||||
import com.arialyy.aria.core.scheduler.DownloadSchedulers;
|
||||
import com.arialyy.aria.core.scheduler.IDownloadSchedulers;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/8/11.
|
||||
@ -156,7 +156,7 @@ public class Task {
|
||||
}
|
||||
}
|
||||
|
||||
public static class Builder {
|
||||
static class Builder {
|
||||
DownloadEntity downloadEntity;
|
||||
Handler outHandler;
|
||||
Context context;
|
@ -14,11 +14,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.core.task;
|
||||
package com.arialyy.aria.core.task;
|
||||
|
||||
import android.content.Context;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.scheduler.IDownloadSchedulers;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.scheduler.IDownloadSchedulers;
|
||||
|
||||
/**
|
||||
* Created by lyy on 2016/8/18.
|
@ -15,10 +15,10 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.orm;
|
||||
package com.arialyy.aria.orm;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.orm;
|
||||
package com.arialyy.aria.orm;
|
||||
|
||||
import android.app.Application;
|
||||
import android.content.Context;
|
||||
@ -22,7 +22,7 @@ import android.database.Cursor;
|
||||
import android.database.sqlite.SQLiteDatabase;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
@ -15,7 +15,7 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.orm;
|
||||
package com.arialyy.aria.orm;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
@ -15,7 +15,7 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.orm;
|
||||
package com.arialyy.aria.orm;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
@ -15,7 +15,7 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.orm;
|
||||
package com.arialyy.aria.orm;
|
||||
|
||||
import android.content.Context;
|
||||
import android.database.sqlite.SQLiteDatabase;
|
@ -15,11 +15,11 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.util;
|
||||
package com.arialyy.aria.util;
|
||||
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import java.io.File;
|
||||
|
||||
/**
|
@ -14,12 +14,12 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.arialyy.downloadutil.util;
|
||||
package com.arialyy.aria.util;
|
||||
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.command.CmdFactory;
|
||||
import com.arialyy.downloadutil.core.command.IDownloadCmd;
|
||||
import com.arialyy.aria.core.command.CmdFactory;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.command.IDownloadCmd;
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileOutputStream;
|
@ -15,7 +15,7 @@
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.util;
|
||||
package com.arialyy.aria.util;
|
||||
|
||||
import android.os.Environment;
|
||||
import java.security.MessageDigest;
|
@ -37,5 +37,5 @@ dependencies {
|
||||
compile 'com.squareup.okhttp3:okhttp:3.2.0'
|
||||
compile 'com.arialyy.frame:MVVM2:2.2.0'
|
||||
compile 'com.arialyy.absadapter:AbsAdapter:1.1.2'
|
||||
compile project(':downloadutil')
|
||||
compile project(':Aria')
|
||||
}
|
||||
|
@ -12,12 +12,11 @@
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:label="@string/app_name"
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/AppTheme">
|
||||
android:theme="@style/AppTheme.NoActionBar">
|
||||
<!--android:name=".activity.SingleTaskActivity"-->
|
||||
<activity
|
||||
android:name=".activity.MainActivity"
|
||||
android:label="@string/app_name"
|
||||
android:theme="@style/AppTheme.NoActionBar">
|
||||
android:label="@string/app_name">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
|
||||
|
@ -23,9 +23,9 @@ import android.support.v7.widget.RecyclerView;
|
||||
import android.support.v7.widget.Toolbar;
|
||||
import android.view.View;
|
||||
import butterknife.Bind;
|
||||
import com.arialyy.downloadutil.core.AMTarget;
|
||||
import com.arialyy.downloadutil.core.Aria;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.aria.core.AMTarget;
|
||||
import com.arialyy.aria.core.Aria;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
import com.arialyy.frame.util.show.L;
|
||||
import com.arialyy.simple.R;
|
||||
import com.arialyy.simple.adapter.DownloadAdapter;
|
||||
@ -135,6 +135,7 @@ public class MultiTaskActivity extends BaseActivity<ActivityMultiBinding> {
|
||||
@Override public void onTaskStart(Task task) {
|
||||
super.onTaskStart(task);
|
||||
L.d(TAG, "download start");
|
||||
mAdapter.updateState(task.getDownloadEntity());
|
||||
}
|
||||
|
||||
@Override public void onTaskResume(Task task) {
|
||||
|
@ -24,16 +24,15 @@ import android.os.Message;
|
||||
import android.support.v7.widget.Toolbar;
|
||||
import android.view.View;
|
||||
import android.widget.Button;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
import butterknife.Bind;
|
||||
import com.arialyy.downloadutil.core.AMTarget;
|
||||
import com.arialyy.downloadutil.core.Aria;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.downloadutil.orm.DbEntity;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.core.AMTarget;
|
||||
import com.arialyy.aria.core.Aria;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.task.Task;
|
||||
import com.arialyy.aria.orm.DbEntity;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import com.arialyy.simple.R;
|
||||
import com.arialyy.simple.base.BaseActivity;
|
||||
import com.arialyy.simple.databinding.ActivitySingleBinding;
|
||||
|
@ -25,16 +25,11 @@ import android.widget.TextView;
|
||||
import butterknife.Bind;
|
||||
import com.arialyy.absadapter.common.AbsHolder;
|
||||
import com.arialyy.absadapter.recycler_view.AbsRVAdapter;
|
||||
import com.arialyy.downloadutil.core.Aria;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.DownloadManager;
|
||||
import com.arialyy.downloadutil.core.command.CmdFactory;
|
||||
import com.arialyy.downloadutil.core.command.IDownloadCmd;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.core.Aria;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import com.arialyy.simple.R;
|
||||
import com.arialyy.simple.widget.HorizontalProgressBarWithNumber;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
@ -46,22 +41,16 @@ import java.util.concurrent.ConcurrentHashMap;
|
||||
*/
|
||||
public class DownloadAdapter extends AbsRVAdapter<DownloadEntity, DownloadAdapter.MyHolder> {
|
||||
private static final String TAG = "DownloadAdapter";
|
||||
private DownloadManager mManager;
|
||||
private CmdFactory mFactory;
|
||||
private Map<String, Integer> mPositions = new ConcurrentHashMap<>();
|
||||
|
||||
public DownloadAdapter(Context context, List<DownloadEntity> data) {
|
||||
super(context, data);
|
||||
mFactory = CmdFactory.getInstance();
|
||||
mManager = DownloadManager.getInstance();
|
||||
List<IDownloadCmd> addCmd = new ArrayList<>();
|
||||
int i = 0;
|
||||
for (DownloadEntity entity : data) {
|
||||
mPositions.put(entity.getDownloadUrl(), i);
|
||||
addCmd.add(mFactory.createCmd(entity, CmdFactory.TASK_CREATE));
|
||||
Aria.whit(getContext()).load(entity).add();
|
||||
i++;
|
||||
}
|
||||
mManager.setCmds(addCmd).exe();
|
||||
}
|
||||
|
||||
@Override protected MyHolder getViewHolder(View convertView, int viewType) {
|
||||
@ -152,14 +141,13 @@ public class DownloadAdapter extends AbsRVAdapter<DownloadEntity, DownloadAdapte
|
||||
@Override public void onClick(View v) {
|
||||
mData.remove(item);
|
||||
notifyDataSetChanged();
|
||||
IDownloadCmd cancelCmd = mFactory.createCmd(item, CmdFactory.TASK_CANCEL);
|
||||
mManager.setCmd(cancelCmd).exe();
|
||||
Aria.whit(getContext()).load(item).cancel();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void setDownloadNum(int num) {
|
||||
mManager.getTaskQueue().setDownloadNum(num);
|
||||
Aria.get(getContext()).setDownloadNum(num);
|
||||
}
|
||||
|
||||
private String covertCurrentSize(long currentSize) {
|
||||
|
@ -14,17 +14,27 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.simple.base;
|
||||
|
||||
import android.databinding.ViewDataBinding;
|
||||
import android.os.Bundle;
|
||||
import android.os.PersistableBundle;
|
||||
import com.arialyy.frame.core.AbsActivity;
|
||||
import com.arialyy.frame.util.AndroidVersionUtil;
|
||||
import com.arialyy.simple.R;
|
||||
|
||||
/**
|
||||
* Created by Lyy on 2016/9/27.
|
||||
*/
|
||||
public abstract class BaseActivity<VB extends ViewDataBinding> extends AbsActivity<VB> {
|
||||
|
||||
@Override protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
if (AndroidVersionUtil.hasLollipop()) {
|
||||
getWindow().setStatusBarColor(getResources().getColor(R.color.colorPrimaryDark));
|
||||
}
|
||||
}
|
||||
|
||||
@Override protected void dataCallback(int result, Object data) {
|
||||
|
||||
}
|
||||
|
@ -18,7 +18,7 @@
|
||||
package com.arialyy.simple.base;
|
||||
|
||||
import android.app.Application;
|
||||
import com.arialyy.downloadutil.core.DownloadManager;
|
||||
import com.arialyy.aria.core.DownloadManager;
|
||||
import com.arialyy.frame.core.AbsFrame;
|
||||
|
||||
/**
|
||||
|
@ -22,9 +22,9 @@ import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.os.Environment;
|
||||
import android.os.Handler;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.DownloadManager;
|
||||
import com.arialyy.downloadutil.util.CommonUtil;
|
||||
import com.arialyy.aria.core.DownloadEntity;
|
||||
import com.arialyy.aria.core.DownloadManager;
|
||||
import com.arialyy.aria.util.CommonUtil;
|
||||
import com.arialyy.frame.util.AndroidUtils;
|
||||
import com.arialyy.frame.util.StringUtil;
|
||||
import com.arialyy.frame.util.show.L;
|
||||
|
@ -12,7 +12,6 @@
|
||||
<android.support.design.widget.AppBarLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:theme="@style/AppTheme.AppBarOverlay"
|
||||
>
|
||||
|
||||
<include layout="@layout/layout_bar"/>
|
||||
|
@ -1,16 +1,16 @@
|
||||
<resources>
|
||||
|
||||
<style name="AppTheme.NoActionBar">
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
|
||||
<item name="android:statusBarColor">@android:color/transparent</item>
|
||||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
||||
<item name="colorAccent">@color/colorAccent</item>
|
||||
</style>
|
||||
<!--<style name="AppTheme.NoActionBar">-->
|
||||
<!--<item name="windowActionBar">false</item>-->
|
||||
<!--<item name="windowNoTitle">true</item>-->
|
||||
<!--<item name="android:windowDrawsSystemBarBackgrounds">true</item>-->
|
||||
<!--<item name="android:statusBarColor">@android:color/transparent</item>-->
|
||||
<!--<item name="colorPrimary">@color/colorPrimary</item>-->
|
||||
<!--<item name="colorPrimaryDark">@color/colorPrimaryDark</item>-->
|
||||
<!--<item name="colorAccent">@color/colorAccent</item>-->
|
||||
<!--</style>-->
|
||||
|
||||
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
|
||||
<style name="AppTheme.NoActionBar" parent="Theme.AppCompat.Light.DarkActionBar">
|
||||
<!-- Customize your theme here. -->
|
||||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
||||
|
@ -1,16 +1,16 @@
|
||||
<resources>
|
||||
|
||||
<!-- Base application theme. -->
|
||||
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
|
||||
<!-- Customize your theme here. -->
|
||||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
||||
<item name="colorAccent">@color/colorAccent</item>
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
</style>
|
||||
<!--<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">-->
|
||||
<!--<!– Customize your theme here. –>-->
|
||||
<!--<item name="colorPrimary">@color/colorPrimary</item>-->
|
||||
<!--<item name="colorPrimaryDark">@color/colorPrimaryDark</item>-->
|
||||
<!--<item name="colorAccent">@color/colorAccent</item>-->
|
||||
<!--<item name="windowActionBar">false</item>-->
|
||||
<!--<item name="windowNoTitle">true</item>-->
|
||||
<!--</style>-->
|
||||
|
||||
<style name="AppTheme.NoActionBar">
|
||||
<style name="AppTheme.NoActionBar" parent="Theme.AppCompat.Light.DarkActionBar">
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
|
@ -1 +1 @@
|
||||
include ':app', ':downloadutil'
|
||||
include ':app', ':Aria'
|
||||
|
Reference in New Issue
Block a user