iphone - 当用户尝试在 iOS 中打开电子邮件附件时如何显示 "Open In..."

标签 iphone email ipad ios attachment

我看到一些 iOS 应用程序有这个功能: 当用户试图打开电子邮件附件时,他们可以按住附件几秒钟,然后会出现一个显示两个按钮的弹出菜单。一个按钮显示为“在 iBooks 中打开”(例如)。当用户点击它时,应用程序将运行并打开附件。

我想知道如何将我的应用程序注册为与特定文档类型相关联。

打开文档时会发生什么情况?它是否被复制到应用程序可以读取的位置,或者应用程序是否收到表示文档的某种对象?

如果有人知道如何做到这一点,请告诉我。非常感谢。

最佳答案

您的应用必须 register its ability to open specific file types通过在其 plist 中设置 CFBundleDocumentTypes。这是 GoodReader's XML for opening PDFs 的示例.

当您的应用是 called to open a file ,您可以在 application:didFinishLaunchingWithOptions: 中找到有关该文件的信息,它通过键为 UIApplicationLaunchOptionsURLKey 的字典传递

您将获得一个指向要打开的文件的 URL。我认为它是只读的,如果您想更改它,您必须保存自己的版本。

关于iphone - 当用户尝试在 iOS 中打开电子邮件附件时如何显示 "Open In...",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3401900/

相关文章:

iphone - 是否可以在没有按钮的情况下切换 View ?

iphone - 在哪里可以找到 iPhone 系统按钮和图标图形?

android - 使用 Android Intent.ACTION_SEND 发送电子邮件

android - 电子邮件未在 Firebase 中验证

ios - 如何在 iOS 的 HealthKit 中保存 HKQuantityTypeIdentifierBodyMass 类型的样本

ios - 访问任何应用通知

php - 无法使用带有 PHPMailer 的谷歌应用程序帐户发送电子邮件

iphone - UIWebView 流媒体 YouTube 在 iPad 上无法全屏显示

ios - 从 ViewController 取图片

ipad - 移动应用程序在 Ipad 上只能旋转 3 个方向