5

当我在 iMessage 中打开附加图像并点击“共享”按钮时,我可以看到“Path”或“Evernote”等 3rd 方应用程序的图标。问题是:如何将我自己的应用程序添加到此列表中?

在此处输入图像描述

4

1 回答 1

6

您需要向应用程序添加文档类型,而不是 URL 方案。尝试将以下片段添加到您的Info.plist

<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeName</key>
        <string>public.jpeg</string>
        <key>CFBundleTypeRole</key>
        <string>Editor</string>
        <key>LSHandlerRank</key>
        <string>Owner</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>public.jpeg</string>
        </array>
    </dict>
</array>

使用此片段(特别是带有LSItemContentTypes键),您可以声明您的应用程序是具有统一类型标识符 (UTI) 的文档的编辑器public.jpeg。因为这个 UTI 是由系统声明的,所以我相信你没有必要在你的应用程序的Info.plist.

您可以在标题为System-Declared Uniform Type Identifiers的 Apple 文档中找到所有系统声明的 UTI 。如果您是 UTI 的新手,您可能还应该阅读 Apple 文档Uniform Type Identifier Concepts

最后但并非最不重要的一点是,不要忘记查阅信息属性列表键参考以了解您应该为核心基础键CFBundleTypeRoleLSHandlerRank.

顺便说一句:这个优秀的 SO 答案还包含有关使用 UTI 的详细信息,特别是如果您需要声明自己的应用程序特定的 UTI。

于 2013-04-14T10:35:13.170 回答