gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-01 17:20:51 26 4
gpt4 key购买 nike

HLS离线播放发布于this session在 WWDC 2016 中,在 iOS 10 中。但在大约 21:20 时,演示者正在谈论如何不应该将下载的文件从 AVAssetDownloadTask 的位置移动。放置它们,因为如果磁盘空间不足,系统可能需要删除它们。也提到了这种可能性here在文档中:

Important

If available disk space is extremely low, the operating system may automatically delete downloaded assets. Before you present to the user that an asset is available for playback, verify that the asset exists and is playable offline.

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

所以我的问题是:如何防止系统删除下载的文件?我可以移动它们吗,即使 documentation explicitly says not to ?有其他方法可以下载文件吗? iOS 11 中有一个新类,AVAssetDownloadStorageManager ,支持将存储管理策略设置为默认或重要...是否可以保证系统不会在至少先询问用户的情况下删除“重要”下载的媒体?罗杰·潘托斯在 Advances in HTTP Live Streaming at WWDC 2017 中说道系统可能会在询问用户后删除 Assets ,以便为软件更新腾出空间,但该声明并不意味着 Assets 不会因其他原因自动删除。

最佳答案

几年来,我们一直将下载的资源从提供的位置移动到FileManager.default.urls(for:.documentDirectory,in:.userDomainMask),到目前为止尚未发现任何问题。

我不确定这是否是好的做法,而且很可能不是。

UPD。我们从头开始重写了下载模块,并决定尝试使用系统来处理 Assets 。经过内部 QA 测试,我们发现系统甚至可以在不通知用户的情况下删除下载的内容。最后,我们被迫再次将下载的内容移至应用程序文档文件夹。

关于ios - 如何防止 iOS 自动删除为离线播放而保存的 HLS 内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49640067/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com