初始安装在开发期间标记用法和验证

时间:2016-08-25 00:19:44

标签: ios on-demand-resources

我正在尝试在我们的应用程序中使用ODR并创建了标签并将其分组在Prefetched下的Initial Install Tags选项下。

  1. 我不确定如何使用开发配置文件在模拟器和设备上验证这一点。
  2. TestFlight是验证初始安装标记使用的唯一选项吗?
  3. 即使是标记为初始安装的资源,我是否必须使用NSBundleResourceRequest?我对初始安装标记的理解是,它会随应用程序自动下载。所以,我认为不需要这个请求。如果我错了,请纠正我。

2 个答案:

答案 0 :(得分:1)

我使用初始安装标签在我们的应用程序中实现了ODR支持(虽然我没有使用TestFlight对其进行测试)。

  1. 我不确定如何使用开发配置文件在模拟器和设备上验证这一点。 - 我通过将资产包嵌入Bundle本身进行本地测试。
  2. TestFlight是验证初始安装标记使用情况的唯一选项吗? - 尚未测试过。但是,我认为答案是肯定的。
  3. 即使是标记为初始安装的资源,我是否必须使用NSBundleResourceRequest? - 是的我们如何获取标记为"仅按需下载","初始安装标记"和"预取标记顺序"
  4. 我做了一个更改,让我的应用程序正确使用ODR内容。我将NSBundleResourceRequest对象作为局部变量。它应该是一个实例变量。 参考:https://iosguy.com/2015/09/18/on-demand-resources/

答案 1 :(得分:0)

根据WWDC https://developer.apple.com/videos/play/wwdc2015/214/

1)您可以使用X中的调试导航器的磁盘部分来验证ODR 代码

但是,从XCode 8.1 beta开始,初始安装标记不能按预期工作。正如您在附带的屏幕截图中看到的那样。

2)根据我对WWDC的理解,这应该可以在Archive版本上运行,也可以在Simulator上运行,只需从XCode运行应用程序即可。不仅是TestFlight

3)我不认为你应该使用单独的获取请求,但由于这似乎是让它工作的唯一方法,这应该被视为一种解决方法而不是解决方案。根据文件

  

初始安装标记。资源同时下载   该应用程序。资源的大小包含在总大小中   App Store中的应用程序。标签可以在不清除时清除   至少由一个NSBundleResourceRequest对象访问。

所以在我看来,这个功能只是没有记录和预期的工作,应该向Apple提交一个错误。这似乎是Apple论坛上的结论

https://forums.developer.apple.com/thread/9530

enter image description here

https://forums.developer.apple.com/thread/9530

enter image description here