iOS 将在需要释放一些空间时在下载后清除资产。
更改资产的保存优先级不会阻止系统清除它们,如此处“设置保存优先级”部分所述。
我下载按需资源的相关代码如下:
func requestResourceWith(tag: [String],
onSuccess: @escaping () -> Void,
onFailure: @escaping (NSError) -> Void) {
currentRequest = NSBundleResourceRequest(tags: Set(tag))
guard let request = currentRequest else { return }
request.endAccessingResources()
request.loadingPriority =
NSBundleResourceRequestLoadingPriorityUrgent
request.beginAccessingResources { (error: Error?) in
if let error = error {
onFailure(error as NSError)
return
}
onSuccess()
}
}
下载 On-Demand 资源后,可以从主包中访问它们。
有没有办法让音频持续存在,从而阻止系统清除它们?