1

我正在为我的应用程序中的多个视频使用点播资源。我已经标记了资源,并将它们放在 Targets Resource Tags 中的“按需下载”标签中。我使用 NSBundleResourceRequest 下载资源,一切都很好。当我执行代码时,资源会被下载,我可以在 xcode 的磁盘部分看到它。

对于我的问题,我认为我不需要发布我的代码。

我的问题是,当我在设备上从 xcode 运行应用程序时,我看到 xcode 运行应用程序,并立即将视频复制到应用程序,甚至在我执行下载代码之前。另外,如果我在设置中检查我的应用程序,iPhone 存储,我发现该应用程序占用了大量空间,因为视频已经下载。为什么视频在“下载”之前就已经占用了存储空间?

发生这种情况仅仅是因为我正在调试应用程序,但是当我发布应用程序时,只有在用户执行下载代码时才会下载视频?

这似乎是一个基本问题,但我看不到任何人解决这一点/

谢谢

4

1 回答 1

1

发生这种情况仅仅是因为我正在调试应用程序,但是当我发布应用程序时,只有在用户执行下载代码时才会下载视频?

是的。Simulator 不是真正的设备,Xcode 也不是服务器。你对资源的访问被正确模拟了——在你要求开始访问它们之前它们是零,然后它们开始工作——所以你可以进行测试,这才是最重要的。但是要获得真正的体验,您应该在设备上通过 TestFlight 运行。有关更多信息,请参阅https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/On_Demand_Resources_Guide/TestingPerformance.html

于 2019-04-01T21:42:14.513 回答