【发布时间】:2013-02-04 23:43:21
【问题描述】:
我已注册 PDF 文档类型,因此我可以打开在 Safari 中查看的邮件附件和 PDF 文件。问题是如果应用程序关闭,它可以正常工作。如果应用程序在后台。 Safari/Mail 切换到我的应用程序,但我的应用程序 didFinishLaunchingWithOptions 函数未被调用,其中包含文件的 URL。所以在这种情况下我无法访问该文件。
在 Safari 中打开任何文档之前,我是否需要强制用户关闭应用程序!
编辑: 这是我的 plist 更改
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>PDF Document</string>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSItemContentTypes</key>
<array>
<string>public.content</string>
<string>public.item</string>
<string>public.data</string>
</array>
</dict>
</array>
我弄乱了这些值,但 public.content 和 public.item 和 public.data 只是注册我的应用程序来打开任何内容,而不仅仅是 PDF。我仍然需要先关闭我的应用程序!
【问题讨论】:
-
我以前没有这样做过,但根据文档和我刚刚做的测试(dropbox),当您点击“在...中打开”选项时,它似乎会自行重启应用程序。您是如何在 plist 中注册应用程序的?你能列出这些值吗?
-
我刚刚编辑了问题。
-
我认为您需要根据this 答案添加
LSItemContentTypes:com.adobe.pdf... 的格式。 -
我之前尝试过这个并且行为相同。 public.item 更通用,它就像通配符,而不是仅定义 PDF 文件。
-
阅读我链接的答案中的最后一条评论。似乎可以解决您的问题。
标签: iphone