首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSURLSessions和HLS视频缓存-部分下载不能删除

NSURLSessions和HLS视频缓存-部分下载不能删除
EN

Stack Overflow用户
提问于 2018-05-22 22:32:50
回答 1查看 516关注 0票数 2

我试图缓存一个HLS视频流(不是实时的),而用户正在观看它。为此,我们设置了一个类似于苹果推荐的AvAssetDownloadTask:

https://developer.apple.com/library/content/documentation/AudioVideo/Conceptual/MediaPlaybackGuide/Contents/Resources/en.lproj/HTTPLiveStreaming/HTTPLiveStreaming.html

此方法工作良好,因为我们可以同时将url资产从下载任务传递到下载和流。

我们希望这个下载暂时缓存到应用程序的视频下载部分,除了我们想要删除部分数据之外,这几乎是本机与NSUrlSessionTask委托一起工作的。

如果下载完成,我们将收到最终的下载位置,并可以添加过期时间或稍后手动删除该文件。但是,如果下载只是部分完成,我就无法找到删除部分下载视频的方法。

我希望取消任务并使其失效将清理部分下载,但情况似乎并非如此,更多的是苹果在上面链接中的状态:In the case where a download is canceled, and there is no intention of resuming it, your app is responsible for deleting the portion of the asset already downloaded to a user’s device.

然而,没有任何关于如何实现这一目标的建议。似乎删除这部分下载应该是容易访问的,但还没有找到实现这一目标的方法。

手动迭代视频下载目录似乎也没有显示这些部分下载,但它们在我们应用程序的主要iOS设置的“下载视频”部分中是可见的。

想知道是否有人已经解决了这个问题,或者有关于如何完成这个问题的建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-22 22:46:45

找到答案,而不是挂起下载任务,它需要取消,一旦我们希望完成部分缓存下载,这将触发。

- (void)URLSession:(NSURLSession *)session assetDownloadTask:(AVAssetDownloadTask *)assetDownloadTask didFinishDownloadingToURL:(NSURL *)location {

其中提供了最终的网址。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50477331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档