在主 Bundle 之外访问

Posted

技术标签:

【中文标题】在主 Bundle 之外访问【英文标题】:Access outside the main Bundle 【发布时间】:2013-09-16 05:25:46 【问题描述】:

我想要一个功能,我的应用程序可以访问它自己的包之外的资源,例如:有一堆“3d 模型”保存在 iPhone 内存中的某个位置(而不是应用程序包中),在运行时我想加载并将其显示在我的应用程序中,

    应用程序启动。 用户可以选择一些模型,比如海豚。 应用程序访问该模型(它不在应用程序包中,而是在 iPhone 的某个地方之外)并加载它。 应用程序显示模型。

有可能吗? 提前感谢您的帮助!

【问题讨论】:

我认为没有任何服务器是不可能的 他可以使用他的应用程序的沙盒。我不认为这是不可能的。 【参考方案1】:

您可以为此目的使用应用程序的沙盒。阅读File System Programming Guide了解更多信息。

【讨论】:

感谢普内特!如果我在沙箱中加载所有资源,我怀疑它会增加应用程序的总内存,对吗? 不,不会。沙盒与应用程序主包不同。这就像使用虚拟空间。您可以在沙盒中保存任何内容。当它将被加载到应用程序中时,只会计算对象的内存。例如,请参阅 ios 中的 Gallery 应用程序的工作原理。它将所有图像保存到沙箱中,然后在用户单击时选择每个图像。要决定的是如何将这些对象放到沙箱中。 我的意思是它会增加“.ipa”的大小吗? 这取决于您如何将对象加载到沙箱中。首选方法是在用户安装应用程序并将对象加载到沙箱时第一次访问 Web 服务。这只能在第一次完成。而且您的 .ipa 大小不会增加,应用程序的内存占用也不会增加。 如果答案对您有所帮助并且您对推理感到满意,您可以随时选择它已回答。这将帮助我获得积分,如果访问此线程,其他用户也将受益。

以上是关于在主 Bundle 之外访问的主要内容,如果未能解决你的问题,请参考以下文章

从bundle中加载xib

重命名 Settings.bundle 而不是 Bundle 显示名称?

fragment的通信之bundle

如何从 iOS 静态库中访问 Bundle

源码解析之访问osgi felix bundle中的文件和资源

Sonata Media Bundle:访问媒体网址