求助:URL变更后恢复AVAssetDownloadURLSession的HLS下载进度
使用AVAssetDownloadURLSession进行HLS离线下载时的续传问题(URL每日变更场景)
我在使用AVAssetDownloadURLSession进行HLS流离线下载时遇到了问题:目标URL每24小时会变更,暂停下载后用新URL恢复时,无法接续之前的进度,只能重新下载。
当前实现流程
- 通过
assetDownloadURLSession.aggregateAssetDownloadTask启动下载 - 用户暂停时,将本地下载文件的bookmarkData保存到UserDefaults:
let bookmark = try tempDownloadUrl?.bookmarkData() userDefaults.set(bookmark, forKey: assetId) - 旧URL失效后点击恢复,
AVAssetDownloadDelegate的didFinishDownloadingTo方法立即触发403错误 - 使用本地.movpkg文件创建新的
AVAggregateAssetDownloadTask,URL未变更时可正常续传,但URL变更后失效
我的思路
- 能否将已下载的m3u8分片迁移至新下载任务
- 能否修改已下载.movpkg文件中的serverURL
可提供2分钟后失效的测试链接,盼解答。
内容的提问来源于stack exchange,提问作者Pete Streem
相关产品推荐
相关产品推荐

