添加文件大小转换接口,当前进度百分比接口

pull/330/head
AriaLyy 8 years ago
parent 5b0951c765
commit 7182dda17d
  1. 4
      Aria/build.gradle
  2. 24
      Aria/src/main/java/com/arialyy/aria/core/download/DownloadTask.java
  3. 13
      Aria/src/main/java/com/arialyy/aria/core/inf/ITask.java
  4. 24
      Aria/src/main/java/com/arialyy/aria/core/upload/UploadTask.java
  5. 8
      README.md

@ -7,8 +7,8 @@ android {
defaultConfig {
minSdkVersion 9
targetSdkVersion 23
versionCode 310
versionName "3.1.0"
versionCode 311
versionName "3.1.1"
}
buildTypes {
release {

@ -95,6 +95,18 @@ public class DownloadTask implements ITask {
return mEntity.getConvertSpeed();
}
/**
* 获取百分比进度
*
* @return 返回百分比进度如果文件长度为0返回0
*/
@Override public int getPercent() {
if (mEntity.getFileSize() == 0) {
return 0;
}
return (int) (mEntity.getCurrentProgress() * 100 / mEntity.getFileSize());
}
/**
* 获取文件大小
*/
@ -102,6 +114,18 @@ public class DownloadTask implements ITask {
return mEntity.getFileSize();
}
/**
* 转换单位后的文件长度
*
* @return 如果文件长度为0则返回0m否则返回转换后的长度1b1k1m1g1t
*/
@Override public String getConvertFileSize() {
if (mEntity.getFileSize() == 0) {
return "0m";
}
return CommonUtil.formatFileSize(mEntity.getFileSize());
}
/**
* 获取当前下载进度
*/

@ -54,8 +54,21 @@ public interface ITask {
*/
public String getConvertSpeed();
/**
* 获取百分比进度
*/
public int getPercent();
/**
* 原始文件byte长度
*/
public long getFileSize();
/**
* 转换单位后的文件长度
*/
public String getConvertFileSize();
public long getCurrentProgress();
public void setTargetName(String targetName);

@ -151,6 +151,30 @@ public class UploadTask implements ITask {
return mUploadEntity.getConvertSpeed();
}
/**
* 获取百分比进度
*
* @return 返回百分比进度如果文件长度为0返回0
*/
@Override public int getPercent() {
if (mUploadEntity.getFileSize() == 0) {
return 0;
}
return (int) (mUploadEntity.getCurrentProgress() * 100 / mUploadEntity.getFileSize());
}
/**
* 转换单位后的文件长度
*
* @return 如果文件长度为0则返回0m否则返回转换后的长度1b1k1m1g1t
*/
@Override public String getConvertFileSize() {
if (mUploadEntity.getFileSize() == 0) {
return "0m";
}
return CommonUtil.formatFileSize(mUploadEntity.getFileSize());
}
@Override public long getFileSize() {
return mUploadEntity.getFileSize();
}

@ -25,7 +25,7 @@ Aria怎样使用?
## 下载
[![Download](https://api.bintray.com/packages/arialyy/maven/Aria/images/download.svg)](https://bintray.com/arialyy/maven/Aria/_latestVersion)</br>
```java
compile 'com.arialyy.aria:Aria:3.1.0'
compile 'com.arialyy.aria:Aria:3.1.1'
```
## 示例
@ -203,12 +203,16 @@ Aria.download(this).removeAllTask();
long speed = task.getSpeed();
}
```
* 获取下载的文件大小
* 获取下载的文件大小、当前进度百分比
同样的,你也可以在DownloadTask对象中获取下载的文件大小
```
@Override public void onTaskRunning(DownloadTask task) {
 //获取文件大小
long fileSize = task.getFileSize();
//获取单位转换后的文件大小
String fileSize1 = task.getConvertFileSize();
//当前进度百分比
int percent = task.getPercent();
}
```

Loading…
Cancel
Save