增加获取执行中的任务api

增加获取剩余时间的api
修复重构loader导致的m3u8问题
This commit is contained in:
laoyuyu
2020-01-07 21:56:35 +08:00
parent b1a2f232fa
commit 432ae1c145
37 changed files with 495 additions and 128 deletions

View File

@@ -204,6 +204,7 @@ public class SingleTaskActivity extends BaseActivity<ActivitySingleBinding> {
getBinding().setProgress(task.getPercent());
}
getBinding().setSpeed(task.getConvertSpeed());
getBinding().setTimeLeft(task.getConvertTimeLeft());
}
}

View File

@@ -155,10 +155,11 @@ public class DownloadGroupActivity extends BaseActivity<ActivityDownloadGroupBin
+ task.getPercent()
+ ", speed = "
+ task.getConvertSpeed()
+ "current_p = "
+ ", current_p = "
+ task.getCurrentProgress());
getBinding().setProgress(task.getPercent());
getBinding().setSpeed(task.getConvertSpeed());
getBinding().setTimeLeft(task.getConvertTimeLeft());
//Log.d(TAG, "sub_len = " + task.getEntity().getSubEntities().size());
mChildList.updateChildProgress(task.getEntity().getSubEntities());
}

View File

@@ -187,7 +187,7 @@ public class M3U8LiveDLoadActivity extends BaseActivity<ActivityM3u8LiveBinding>
@Download.onTaskFail
void taskFail(DownloadTask task, Exception e) {
if (task.getKey().equals(mUrl)) {
if (task != null && task.getKey().equals(mUrl)) {
Toast.makeText(M3U8LiveDLoadActivity.this, getString(R.string.download_fail),
Toast.LENGTH_SHORT)
.show();
@@ -216,14 +216,14 @@ public class M3U8LiveDLoadActivity extends BaseActivity<ActivityM3u8LiveBinding>
switch (view.getId()) {
case R.id.start:
if (Aria.download(this).load(mTaskId).isRunning()) {
Aria.download(this).load(mEntity.getId()).stop();
Aria.download(this).load(mTaskId).stop();
} else {
startD();
}
break;
case R.id.cancel:
if (mTaskId != -1){
Aria.download(this).load(mEntity.getId()).cancel(true);
Aria.download(this).load(mTaskId).cancel(true);
mTaskId = -1;
}
break;

View File

@@ -210,7 +210,7 @@ public class M3U8VodDLoadActivity extends BaseActivity<ActivityM3u8VodBinding> {
@Download.onTaskRunning
protected void running(DownloadTask task) {
if (task.getKey().equals(mUrl)) {
//ALog.d(TAG, "isRunning");
ALog.d(TAG, "m3u8 void running, p = " + task.getPercent() + ", speed = " + task.getConvertSpeed());
getBinding().setProgress(task.getPercent());
getBinding().setSpeed(task.getConvertSpeed());
}

View File

@@ -19,6 +19,10 @@
name="stateStr"
type="String"
/>
<variable
name="timeLeft"
type="String"
/>
</data>
@@ -40,6 +44,7 @@
bind:progress="@{progress}"
bind:speed="@{speed}"
bind:stateStr="@{stateStr}"
bind:timeLeft="@{timeLeft}"
/>
<com.arialyy.simple.widget.SubStateLinearLayout

View File

@@ -105,6 +105,16 @@
style="?buttonBarButtonStyle"
/>
<Button
android:id="@+id/cancel"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:onClick="onClick"
android:text="@string/cancel"
style="?buttonBarButtonStyle"
/>
</LinearLayout>

View File

@@ -33,6 +33,10 @@
name="viewModel"
type="com.arialyy.simple.core.download.SingleTaskActivity"
/>
<variable
name="timeLeft"
type="String"
/>
</data>
<LinearLayout
@@ -74,6 +78,7 @@
bind:progress="@{progress}"
bind:speed="@{speed}"
bind:stateStr="@{stateStr}"
bind:timeLeft="@{timeLeft}"
/>
</LinearLayout>

View File

@@ -13,6 +13,10 @@
name="speed"
type="String"
/>
<variable
name="timeLeft"
type="String"
/>
<variable
name="progress"
type="int"
@@ -64,6 +68,7 @@
android:layout_below="@+id/progressBar"
android:orientation="horizontal"
>
<TextView
android:id="@+id/speed"
android:layout_width="wrap_content"
@@ -74,6 +79,16 @@
android:textColor="@color/black"
/>
<TextView
android:id="@+id/time_left"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_weight="1"
android:text="@{timeLeft}"
android:textColor="@color/black"
/>
<Button
android:id="@+id/start"
android:layout_width="0dp"