我将自定义文件类型与我的iphone-app相关联,一切正常:在邮件中选择文件时,它要求我用我的应用程序打开该文件。
但是,它只显示该文件的默认图像,而不是我提供的22x29px PNG。
你能看出我的错误吗?
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeIconFile</key>
<string>DocIcon.png</string>
<key>CFBundleTypeName</key>
<string>kmk custom data type</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>LSItemContentTypes</key>
<array>
<string>com.mycomp.document.kmk</string>
</array>
</dict>
</array>
...
<array>
<dict>
<key>UTTypeConformsTo</key>
<array>
<string>public.text</string>
</array>
<key>UTTypeDescription</key>
<string>My App File</string>
<key>UTTypeIdentifier</key>
<string>com.mycomp.document.kmk</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<string>kmk</string>
</dict>
</dict>
</array>
docIcon.png是22x29px,并且在44x58px中有一个名为docIcon@2x.png的视网膜兄弟,但那里没有引用。我认为这可能是错误,但我不知道如何解决这个问题。
答案 0 :(得分:0)
在Xcode 5中,选择你的&#34; TARGET&#34;,转到标签&#34; INFO&#34;,查看&#34;文档类型&#34; :你在这里设置了你的图标吗?现在,检查是否在导出/导入的UTI中设置标识符=您输入的类型&#34;文档类型&#34;。
特别检查:
com.mycomp.document。 kmk != com.mycomp.document。 kpk
编辑:(删除)
编辑2:
基于apple doc here
您应该设置导出的UTI:
identifier = com.mycomp.document.kmk
符合= public.data
其他导出的UTI属性
UTTypeTagSpecification(Dictionary)
public.mime-type = Application/XXX (replace XXX vita your app name) public.filename-extension = kmk (extension without the dot)
您在UTExportedTypeDeclarations的info.plist中找到了
<key>UTExportedTypeDeclarations</key>
<array>
<dict>
<key>UTTypeConformsTo</key>
<array>
<string>public.data</string>
</array>
<key>UTTypeDescription</key>
<string>YOUR DESCRIPTION</string> (to be changed)
<key>UTTypeIdentifier</key>
<string>com.mycomp.document.kmk</string>
<key>UTTypeSize320IconFile</key>
<string>Icon@2x</string>
<key>UTTypeSize64IconFile</key>
<string>Icon</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<string>kmk</string>
<key>public.mime-type</key>
<string>Application/YOUR-APP-NAME</string> (to be changed)
</dict>
</dict>
</array>
编辑3:
netshark1000报告了Application / YOUR-APP-NAME已解决问题。
跳这可以帮助别人。