离线下载
2023-05-19 16:31:59 1 举报
离线下载流程
作者其他创作
大纲/内容
过滤sourcesMap中有效时间小于timestamp的素材添加进入delList
Y
http请求获取最大并发数标志并更新maxTasksNum
清空addMap
过滤出delList中json文件组成json文件名的集合于delDirectoryList合并
addMap添加addList
合并流程
成功?
Android删除delList中素材
delList.length > 0?
N
向服务器报告删除列表
删除对应同名json文件以及同名文件夹
结束
downloadAccessFlag?
删除sourcesMap中存在于delList的素材
clearFlag?
向服务端发送下载成功文件信息
Android设置最大并发数maxTasksNumAndroid添加addMap进入下载任务
mergeList.length > 0?
Android删除delDirectoryList中文件夹
maxTasksFlag?
http请求获取默认延期时间并更新defaultDelay
获取缓存中素材列表映射表(sourcesMap)、待下载素材映射表(addMap)、待合并素材映射表(mergeMap)、最大并发数(默认5)(maxTasksNum)、默认延期时间(defaultDelay)
删除mergeMap中为0的字段
输入新增列表(addList)、删除列表(delList)、删除文件夹列表(delDirectoryList)、下载标志(downloadAccessFlag)、最大并发数标志(maxTasksFlag)、默认延期时间标志(defaultDelayFlag)、立即清除标志(clearFlag)、时间戳(timestamp)
过滤出mergeMap中值为0的素材集合mergeList
下载任务结果反馈
存在json文件还未下载或者合并完成但已经过期,也要添加删除列表
失败次数是否没有达到3次?
Android暂停下载素材
是json文件?
循环mergeList,Android合并同级同名文件夹下所有分片素材
defaultDelayFlag?
过滤sourcesMap中有效时间小于timestamp + defaultDelay的素材添加进入delList
开始
Android解析json文件,同级建立同名文件夹,把json数据分片信息添加进入addMap
失败文件加入addMap
mergeList中素材值 - 1
0 条评论
下一页