0

我有一个应用程序声明了一个自定义文件类型(只是一些 XML),当 iOS 在 iOS 5、6 和 7 上遇到这个文件时,它知道如何处理它 - 我的应用程序启动并且文件导入就好了。

但是在 iOS 4.3.3 上,自定义文件类型似乎只是被认为是纯文本 - 电子邮件客户端显示它,并且没有提供在我的应用程序中打开文件的选项。

以下是我的应用程序 Info.plist 的相应部分:

    <key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeName</key>
        <string>iBlueSky Format</string>
        <key>LSHandlerRank</key>
        <string>Owner</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>uk.co.tenero.ibluesky</string>
        </array>
    </dict>
</array>

<key>UTExportedTypeDeclarations</key>
<array>
    <dict>
        <key>UTTypeConformsTo</key>
        <array>
            <string>public.data</string>
        </array>
        <key>UTTypeDescription</key>
        <string>iBlueSky File</string>
        <key>UTTypeIdentifier</key>
        <string>uk.co.tenero.ibluesky</string>
        <key>UTTypeTagSpecification</key>
        <dict>
            <key>public.filename-extension</key>
            <array>
                <string>bsky</string>
            </array>
            <key>public.mime-type</key>
            <string>application/xml</string>
        </dict>
    </dict>
</array>

谁能发现我做错了什么?

iOS 3.2 支持像这样操作文件,所以它应该可以工作。

我打算在下一次重大更新中放弃对 iOS 4、5 和 6 的支持,但我想为旧设备上的用户再提供一个具有此功能的版本。

4

1 回答 1

0

发现了问题。我需要将应用程序定义为文件类型的所有者编辑者。在更高版本的 iOS 中,将您的应用定义为所有者似乎足以暗示编辑者角色:

<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
于 2013-09-27T15:06:29.710 回答