在iOS上跨App Data Exchange

时间:2014-04-24 11:56:36

标签: ios dropbox ibooks

我有以下问题:

我需要将PDF加载到用户可以选择的应用程序中。我并非真正关心PDF的来源。 有没有办法,我的应用程序切换到其他应用程序,如Dropbox或iBooks,然后用户选择PDF,然后PDF加载到我的应用程序,用户可以用它做什么?

3 个答案:

答案 0 :(得分:1)

这在一定程度上取决于您如何配置应用程序,部分取决于其他应用程序是否进行文件共享。以下是Apple如何完成部分工作的参考资料: QA1587

作为示例,当PDF来自Safari或Mail时,我在应用程序中工作。 (我不认为iBooks支持它......不确定Dropbox。)

答案 1 :(得分:0)

您应该使用可以打开的文件类型注册您的应用。然后,应用程序将作为可能的目标出现在其他应用程序中,以打开用户选择的文件。

咨询Apple documentation

答案 2 :(得分:0)

阅读有关注册应用程序能够打开的文件类型以及使用文档交互控制器的信息。

总结......

注册您的应用支持的文件类型(在您的特定情况下为PDF类型)。

下面的图片表示将接受在UIDocumentInteractionController内打开的许多文件类型的设置。

Project Info - Document Types

一旦设置到位,当实现文档交互控制器的另一个应用程序的用户打开PDF文件并点击操作按钮时,您的应用程序将包含在"打开...& #34;选项。

那么,如何接收这些信息......

appDelegate.m中,在UIApplicationDelegate方法application:didFinishLaunchingWithOptions:中加入一个接收器,选项部分就是您有兴趣接收的内容,并在必要时进行解析。

This is the link发表了Mattt Thompson关于这个主题的好文章。

同样在您的appDelegate.m中,请在UIApplicationDelegate方法application:openURL:sourceApplication:annotation:中加入代码,以控制您的应用如何响应前面提到的" Open In ..."来自另一个应用程序在这里,您编写代码以确保您的应用程序在从另一个应用程序调用时打开并正确响应。

希望这有帮助。