NSBundleResourceRequest beginAccessingResources永远不会完成

时间:2017-10-22 19:39:41

标签: ios swift on-demand-resources

我正在尝试在我的应用程序中使用ODR,但beginAccessingResources永远不会完成。以下是我的代码的简化版本:

let bundleResourceRequest = NSBundleResourceRequest(tags: tags)

bundleResourceRequest.beginAccessingResources { error in

    DispatchQueue.main.async {
        if let error = error {
            bundleResourceRequest.endAccessingResources()

            // Handle error

        } else {
            // Successful
        }
    }
}

我开始使用标记为.sks的{​​{1}}文件以及标记为Level1的另一个.sks标记为简单。当我开始访问标记Home的资源时,我成功完成了没有问题。但是,当我尝试使用Home标记时,完成块永远不会触发。我没有收到错误或成功。当我查看“磁盘报告”时,它显示Level1HomeIn UseLevel1,其中包含一个永不移动的进度条。 Downloading总共16 KB,所以它不是太大,我让它坐了大约10分钟但没有成功。

什么可能导致此功能永远不会完成?

1 个答案:

答案 0 :(得分:4)

我可以通过转到Build Settings并将Embed Asset Packs in Product Bundle更改为Yes进行调试来解决这个问题。