标签: avassetdownloadstoragemanager

如何防止 iOS 自动删除为离线播放而保存的 HLS 内容?

HLS 离线播放是在WWDC 2016 的这次会议上在 iOS 10 中宣布的。但在 21:20 左右,演示者正在谈论如何将下载的文件从放置位置移动AVAssetDownloadTask,因为系统可能需要如果磁盘空间不足,则删除它们。文档中提到了这种可能性:

重要的

如果可用磁盘空间极低,操作系统可能会自动删除下载的资源。在向用户展示资产可供播放之前,请验证该资产是否存在并且可以离线播放。

我正在构建一个应用程序来使用 HLS 播放受 DRM 保护的音频内容,并且我希望支持流式传输和下载,以便用户可以保存他们想要的文件以供离线播放。但如果下载的文件在未经用户许可的情况下被删除,那就是一种糟糕的体验。

所以我的问题是:如何防止系统删除下载的文件?即使文档明确表示不可以,我可以移动它们吗?有其他方法可以下载文件吗?iOS 11 中有一个新类,AVAssetDownloadStorageManager支持将存储管理策略设置为默认或重要...是否有任何保证系统不会在至少先询问用户的情况下删除“重要”下载的媒体?Roger Pantos 在WWDC 2017 的 HTTP Live Streaming 进展中表示,系统可能会在询问用户后删除资产,以便为软件更新腾出空间,但这并不意味着资产不会因其他原因而自动删除。

http-live-streaming ios avassetdownloadtask avassetdownloadstoragemanager

6
推荐指数
1
解决办法
628
查看次数