fix: 修复下载状态更新不及时的问题

This commit is contained in:
juntao
2022-06-29 14:41:41 +08:00
parent d4a651ce63
commit 983bbfc309
20 changed files with 123 additions and 34 deletions

View File

@ -846,6 +846,8 @@ public class DownloadManager implements DownloadStatusListener {
public void addObserver(DataWatcher dataWatcher) {
Utils.log(DownloadManager.class.getSimpleName(), "addObserver");
DataChanger.INSTANCE.addObserver(dataWatcher);
notifyDownloadedStatusASAP(dataWatcher);
}
/**
@ -856,6 +858,18 @@ public class DownloadManager implements DownloadStatusListener {
DataChanger.INSTANCE.deleteObserver(dataWatcher);
}
/**
* 立马通知 dataWatcher 更新已下载完的任务状态,这里的下载完成是持久状态,不是瞬时状态
*
*/
private void notifyDownloadedStatusASAP(DataWatcher dataWatcher) {
for (DownloadEntity downloadEntity : getAllDownloadEntitySnapshots()) {
if (downloadEntity.getStatus() == DownloadStatus.done) {
dataWatcher.onDataInit(downloadEntity);
}
}
}
/**
* 初始化下载服务
*/