将文件存储在 iphone 的沙盒之外或通过其他应用程序访问文件系统

Posted

技术标签:

【中文标题】将文件存储在 iphone 的沙盒之外或通过其他应用程序访问文件系统【英文标题】:Storing file out of sandbox in iphone or Accessing filesystem by other applications 【发布时间】:2012-02-21 07:09:21 【问题描述】:

我的应用程序的主要目标是从服务器下载 pdf、html、doc 等文件类型并读取它。

现在的要求是,我下载的文件应该可以被设备中已经安装的其他阅读器应用程序访问。那么如何让我的文件系统被其他应用程序读取呢?

是否有可能将文件系统存储在公共位置或沙盒之外,当用户从设备上卸载或删除应用程序时,这些文件系统不会被删除?这个问题背后的原因是,用户下载后不应该丢失他的内容,用户可能会使用他设备中已经安装的其他阅读器应用程序来阅读下载的文件。

提前致谢,

沙提

【问题讨论】:

【参考方案1】:

不,你不能。沙盒的存在是有原因的。

【讨论】:

是否可以允许其他应用程序读取我的 pdf 和 doc 文件? 在某种意义上没有,但如果应用支持打开特定文件类型,您可以允许用户通过developer.apple.com/library/ios/#documentation/FileManagement/…在此应用中打开文件 对于 iPad 应用程序,确实可以允许其他应用程序读取您的应用程序中的 pdf 和文件。为此,您需要在 iPad 应用程序的 info.plist 文件中添加一个密钥 UIFileShareEnabled,并且需要添加您计划支持的文档格式。其余详细信息可在developer.apple.com/library/ios/#documentation/FileManagement/…

以上是关于将文件存储在 iphone 的沙盒之外或通过其他应用程序访问文件系统的主要内容,如果未能解决你的问题,请参考以下文章

在沙盒外的 iphone SDK 中观看用户活动?

在其他 Mac 上的沙盒中测试 Mac Appstore 的 IAP

沙盒路径

iOS开发之沙盒机制(SandBox)

iBooks 能够读取其他应用程序沙盒中的文件

IOS 沙盒机制 浅析