【问题标题】:Finder not seeing my UTIFinder 没有看到我的尿路感染
【发布时间】:2011-11-23 21:08:01
【问题描述】:

我试图告诉 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>

有什么明显的地方我做错了吗?

【问题讨论】:

    标签: macos macos-carbon uti


    【解决方案1】:

    由于 Mail 为 .eml 扩展名声明了一个 UTI,我认为为同一扩展名定义自己的 UTI 是没有意义的。只需在 LSItemContentTypes 下使用 Mail 的 UTI。如果需要,您可以将 Mail 的 UTI 声明复制为导入类型。

    【讨论】:

    • 确实,您需要将 Mail 的 UTI 声明导入到您自己的 Info.plist 中,然后在 CFBundleDocumentTypes 中使用 Mail 的 UTI 而不是您自己的。我不久前写了一个应用程序来帮助解决这两个问题:boredzo.org/uti-plist-helper
    • 这行得通,但我想知道如果在主机系统上删除 Mail.app 会发生什么?似乎我依赖 Mail.app 在那里并且工作正常,这让我感到不安。我宁愿完全独立于 Mail.app。 (目前我正在导入他们的 UTI ......这使我的应用程序出现在 .eml 文件的“打开方式”菜单上)
    • @fret:Mail.app 被删除就好了。这才是编写导入声明的真正意义所在。你是说,我不拥有这个 UTI,但以防万一所有者不在,这是声明。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-06
    • 1970-01-01
    相关资源
    最近更新 更多