如何从其他 iOS 应用程序读取我应用程序的 Document 目录中的文档?
Posted
技术标签:
【中文标题】如何从其他 iOS 应用程序读取我应用程序的 Document 目录中的文档?【英文标题】:How can I read documents in my app's Document directory from other iOS apps? 【发布时间】:2016-01-11 10:25:23 【问题描述】:我有一个应用程序,我在其中从服务器下载 pdf 文件并将它们本地存储在文档目录中。现在,我想在我的应用程序之外读取该文件,这意味着我想使用其他 pdf 阅读器应用程序读取该文件,
如何使用其他应用读取这些文件?
我遇到了同样的问题Here, 它有很好的答案,但它太旧了。那个时候是不可能的,现在有可能吗?
是否可以将这些文件保存在 iBooks 中?
我想澄清一件事
“我不想打开支持pdf文件的应用, 我只想打开存储在我的应用程序中的 pdf 文件 与其他应用程序。就像我们可以访问照片应用程序并获取 来自设备的图像,我想打开 pdf 文件 存储在我的应用程序中”
【问题讨论】:
检查是否有任何 PDF 阅读器应用程序使用 URL 方案提供此类通信。虽然只是为了具体一点,但您尝试使用哪个“其他”应用程序来打开您的 pdf 文档?但请记住,最终这取决于其他应用程序可能会或可能不会允许这样的事情 @NSNoob : “其他应用程序”是指任何可以读取 PDF 文件的此类应用程序。 @DivyanshuSharma :我知道我可以在我的应用程序中读取 pdf 并且我也实现了它,但我仍然希望其他应用程序也可以读取这些文件。 是的,具体是哪些应用程序?每个应用程序都有其不同的 URL 方案。具体一点。 @NSNoob :我已经告诉过你,任何安装在设备上的此类应用程序都可以读取 pdf 文件。任何意味着任何,没有我正在寻找的特定应用程序。谢谢 【参考方案1】:您可以使用 UIApplication 的 openURL: 方法打开文件 URL。由于沙盒,其他应用无法访问您应用的 Documents 文件夹中的任何文件。
您需要使用 UIDocumentInteractionController 打开您在其他应用程序中下载或创建的文档。
【讨论】:
以上是关于如何从其他 iOS 应用程序读取我应用程序的 Document 目录中的文档?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 SFSafariViewController 从 iOS Safari 应用程序中读取 Cookie
如何使用 Swift 从 iOS HealthKit 应用程序读取心率?