我试图告诉OSX的Finder我的电子邮件客户端应用程序可以打开.eml文件,到目前为止它还不是很好。我从Mail.app的plist中取了一片叶子,几乎直接复制了大部分UTI值,只是将UTTypeIdentifier更改为我自己的公司。
现有的plist:
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>LSItemContentTypes</key>
<array>
<string>com.memecode.scribe.email</string>
</array>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>CFBundleTypeIconFile</key>
<string>Email.icns</string>
<key>CFBundleTypeName</key>
<string>Email Message</string>
</dict>
</array>
<key>UTExportedTypeDeclarations</key>
<array>
<dict>
<key>UTTypeIconFile</key>
<string>Email.icns</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.data</string>
<string>public.email-message</string>
</array>
<key>UTTypeDescription</key>
<string>Email Message</string>
<key>UTTypeIdentifier</key>
<string>com.memecode.scribe.email</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<string>eml</string>
<key>public.mime-type</key>
<string>message/rfc822</string>
</dict>
</dict>
</array>
有什么明显的我在这里做错了吗?
答案 0 :(得分:1)
由于Mail声明了.eml扩展名的UTI,我认为为同一个扩展名定义自己的UTI是不合理的。只需在LSItemContentTypes下使用Mail的UTI。如果需要,可以将Mail的UTI声明复制为导入类型。