fix: 安装流程相关优化-2024/7/30-验收问题 https://jira.shanqu.cc/browse/GHZSCY-6357
Signed-off-by: chenjuntao <chenjuntao@ghzhushou.com>
This commit is contained in:
@ -996,19 +996,21 @@ public class DownloadManager implements DownloadStatusListener {
|
||||
* 3.检查是否显示下载通知栏
|
||||
*/
|
||||
public void initDownloadService() {
|
||||
final Set<String> urlSet = NDataChanger.INSTANCE.getDownloadingTaskUrlSet();
|
||||
for (DownloadEntity downloadEntity : getAllDownloadEntity()) {
|
||||
if (!urlSet.contains(downloadEntity.getUrl())
|
||||
&& (downloadEntity.getStatus().equals(DownloadStatus.downloading)
|
||||
|| downloadEntity.getStatus().equals(DownloadStatus.waiting))) {
|
||||
downloadEntity.setStatus(DownloadStatus.subscribe);
|
||||
mDownloadDao.newOrUpdate(downloadEntity);
|
||||
NDataChanger.INSTANCE.notifyDataChanged(downloadEntity);
|
||||
packageExecutor.execute(() -> {
|
||||
final Set<String> urlSet = NDataChanger.INSTANCE.getDownloadingTaskUrlSet();
|
||||
for (DownloadEntity downloadEntity : getAllDownloadEntity()) {
|
||||
if (!urlSet.contains(downloadEntity.getUrl())
|
||||
&& (downloadEntity.getStatus().equals(DownloadStatus.downloading)
|
||||
|| downloadEntity.getStatus().equals(DownloadStatus.waiting))) {
|
||||
downloadEntity.setStatus(DownloadStatus.subscribe);
|
||||
mDownloadDao.newOrUpdate(downloadEntity);
|
||||
NDataChanger.INSTANCE.notifyDataChanged(downloadEntity);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
startDownloadService();
|
||||
checkAndRetryDownload(true);
|
||||
startDownloadService();
|
||||
checkAndRetryDownload(true);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@ -255,9 +255,6 @@ public class MainActivity extends BaseActivity {
|
||||
}
|
||||
}
|
||||
|
||||
// 必须放在这里,否则会导致获取 baseActivity 不是本应用包名
|
||||
DownloadManager.getInstance().initDownloadService();
|
||||
|
||||
ReservationRepository.refreshReservations();
|
||||
|
||||
// 跳转至其它页面
|
||||
|
||||
@ -20,6 +20,10 @@ class ResumeDownloadHudHandler(priority: Int) : PriorityChainHandler(priority) {
|
||||
val isOnWiFiNetwork: Boolean = NetworkUtils.isWifiConnected(HaloApp.getInstance())
|
||||
val downloadingEntitySnapshotList = DownloadManager.getInstance().allDownloadEntitySnapshots.filter {
|
||||
it.status == DownloadStatus.downloading
|
||||
|| it.status == DownloadStatus.pause
|
||||
|| it.status == DownloadStatus.subscribe
|
||||
|| it.status == DownloadStatus.timeout
|
||||
|| it.status == DownloadStatus.neterror
|
||||
}
|
||||
|
||||
if (!isOnWiFiNetwork || downloadingEntitySnapshotList.isEmpty()) {
|
||||
|
||||
@ -364,6 +364,9 @@ public class HaloApp extends MultiDexApplication {
|
||||
// 必须放在外面,否则不能及时刷新用户数据
|
||||
UserRepository.getInstance().getLoginUserInfo();
|
||||
|
||||
// 初始化下载服务,恢复下载任务
|
||||
DownloadManager.getInstance().initDownloadService();
|
||||
|
||||
GlobalPriorityChainHelper.INSTANCE.preStart(isNewForThisVersion);
|
||||
|
||||
MainWrapperRepository.Companion.getInstance().getDataUnion();
|
||||
|
||||
Reference in New Issue
Block a user