【问题标题】:Open PDF file with my APP用我的APP打开PDF文件
【发布时间】:2016-11-07 10:41:36
【问题描述】:

我正在尝试添加一个选项,以便在按下 PDF 文件的共享按钮时,它会建议使用我的应用程序打开。像这样:

目前我的 plist 文件有 CFBundleDocumentTypesUTImportedTypeDeclarations 属性,看起来像这样:

我关注了this tutorial,但没有运气。我的应用程序未显示在列表中。我错过了什么?

【问题讨论】:

    标签: ios iphone pdf ios10 pdf-viewer


    【解决方案1】:

    您不应该拥有用于 PDF 的 UTImportedTypeDeclarations。 PDF 是标准提供的 UTI,因此您不应声明自己的非标准 UTI。您只在CFBundleDocumentTypes 部分使用了正确的 PDF 文件 UTI,而不是您编造的。

    <key>CFBundleDocumentTypes</key>
    <array>
        <dict>
            <key>CFBundleTypeName</key>
            <string>PDF</string>
            <key>LSHandlerRank</key>
            <string>Alertnate</string>
            <key>LSItemContentTypes</key>
            <array>
                <string>com.adobe.pdf</string>
            </array>
        </dict>
    </array>
    

    【讨论】:

    【解决方案2】:

    在 CFBundleDocumentTypes-info.plist 文件中添加 com.adobe.pdf 后,ios 允许使用您的应用打开 pdf 文件。与 yourApp 共享是另一回事。

    要检查它与您所做的工作的关系,请在 safari 中打开 pdf 并检查用菜单打开,您将在那里看到您的应用。

    要获得 Share With Option(您在屏幕截图中描述的方式),您需要实现共享扩展。您可以从Apple's Developer website了解更多信息

    更新:

    对于支持 PDF 文档,LScontentItemTypes 应包含“com.adobe.pdf”

    【讨论】:

    • @iOS_developer> 我以前试过。但是 safari 没有显示我的应用图标。
    • @Drongo 我认为 plist 设置中的问题,LSItemContentTypes 中的值应该包含“com.adobe.pdf”并且项目名称可以是“PDF 文档”之类的任何内容
    • public.pdf 是无效的内容类型。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-01
    • 1970-01-01
    相关资源
    最近更新 更多