UIT不适用于相册

时间:2013-02-08 14:51:46

标签: ios6

我已经注册了我的应用程序以打开所有文档类型,这工作得很好,但我不能让它与图像一起工作,它不会出现在PhotoAlbum但我的应用程序出现在safari和safari可以发送给我打开请求打开某些文件。

任何提示?

这是我的plist改变:

<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeName</key>
        <string>PDF Document</string>
        <key>LSHandlerRank</key>
        <string>Default</string>
        <key>CFBundleTypeRole</key>
        <string>Viewer</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>public.content</string>
            <string>public.item</string>
            <string>public.data</string>
            <string>public.image</string>
        </array>
    </dict>
</array>

1 个答案:

答案 0 :(得分:0)

您正在混淆OSX和iOS密钥。例如,CFBundleTypeRole是iOS中未使用的OSX密钥。

以下是文档中CFBundleDocumentTypes密钥的详细说明:

  

CFBundleDocumentTypes

     

CFBundleDocumentTypes(Array - iOS,OS X)包含一系列词典,这些词典将一个或多个文档类型与您的应用相关联。每个字典称为类型定义字典,包含用于定义文档类型的键。表2列出了这些词典中支持的键。有关指定应用程序支持的类型的其他信息,请参阅“在应用程序的属性列表中存储文档类型信息”。

您应该在每个文档类型的CFBundleDocumentTypes数组中提供一个条目。您目前只有一个名为PDF文档的条目。 LSItemContentTypes下的数组实际上是针对一种特定文档类型的各种“扩展”。请阅读文档中的说明:

  

此键包含一个字符串数组。每个字符串都包含一个定义支持的文件类型的UTI。必须明确拼写UTI字符串,而不是使用Launch Services定义的常量之一。例如,要支持PNG文件,您应在数组中包含字符串“public.png”。使用此密钥时,还要添加带有相应条目的NSExportableTypes密钥。

总之,您应该为图像插入一个新的类型定义字典到CFBundleDocumentTypes数组中。

详细了解详情here

相关问题