【问题标题】:Custom sqlite UTI not working自定义 sqlite UTI 不起作用
【发布时间】:2013-05-29 16:18:15
【问题描述】:

我正在尝试让我的应用程序导入通过电子邮件发送的 sqlite 文件,因此我在 info.plist 中创建了文档类型和自定义 UTI。但是,当我收到通过电子邮件发送的 sqlite 文件时,没有出现在我的应用中打开的选项:

这是文档类型定义:

这是尿路感染

我现在已将其修改为以下内容,以创建名为 .icx 的自定义文件扩展名。但是,当我尝试打开 icx 附件时,我得到的唯一选项是 Dropbox、Mail 和 FileAppPro:

<key>CFBundleDocumentTypes</key>
    <array>
        <dict>
            <key>CFBundleTypeIconFiles</key>
            <array>
                <string>inCommand icon114</string>
            </array>
            <key>CFBundleTypeName</key>
            <string>icx Database</string>
            <key>CFBundleTypeRole</key>
            <string>Editor</string>
            <key>LSHandlerRank</key>
            <string>Owner</string>
            <key>LSItemContentTypes</key>
            <array>
                <string>com.ncbath.inControl.icx</string>
            </array>
        </dict>
    </array>


<key>UTExportedTypeDeclarations</key>
    <array>
        <dict>
            <key>UTTypeConformsTo</key>
            <array>
                <string>public.data</string>
            </array>
            <key>UTTypeDescription</key>
            <string>icx Database</string>
            <key>UTTypeIdentifier</key>
            <string>com.ncbath.inControl.icx</string>
            <key>UTTypeSize320IconFile</key>
            <string>inCommand icon114</string>
            <key>UTTypeSize64IconFile</key>
            <string>inCommand icon57</string>
            <key>UTTypeTagSpecification</key>
            <string>Dictionary</string>
            <key>public.filename-extension</key>
            <string>icx</string>
            <key>public.mime-type</key>
            <array>
                <string>application/inControl</string>
            </array>
        </dict>
    </array>

【问题讨论】:

    标签: sqlite email-attachments uti


    【解决方案1】:

    我已经修复了它 - 我发现如果你在使用 UTExportedTypeDeclarations 和 CFBundleDocumentTypes 的 GUI 条目时不小心,你可能会导致字典内容乱序 - 在我的例子中是 UTTypeTagSpecification。我的结论是最好将 info.plist 视为源并正确编辑它。这是工作代码:

    <key>CFBundleDocumentTypes</key>
        <array>
            <dict>
                <key>CFBundleTypeIconFiles</key>
                <array>
                    <string>inCommand icon114</string>
                </array>
                <key>CFBundleTypeName</key>
                <string>icx</string>
                <key>CFBundleTypeRole</key>
                <string>Editor</string>
                <key>LSHandlerRank</key>
                <string>Owner</string>
                <key>LSItemContentTypes</key>
                <array>
                    <string>com.ncbath.inControl.icx</string>
                </array>
            </dict>
        </array>
    
    
    <key>UTExportedTypeDeclarations</key>
        <array>
            <dict>
                <key>UTTypeConformsTo</key>
                <array>
                    <string>public.data</string>
                </array>
                <key>UTTypeDescription</key>
                <string>icx</string>
                <key>UTTypeIdentifier</key>
                <string>com.ncbath.inControl.icx</string>
                <key>UTTypeSize320IconFile</key>
                <string>inCommand icon114</string>
                <key>UTTypeSize64IconFile</key>
                <string>inCommand icon57</string>
                <key>UTTypeTagSpecification</key>
                <dict>
                    <key>public.filename-extension</key>
                    <string>icx</string>
                    <key>public.mime-type</key>
                    <string>application/x-inControl</string>
                </dict>
            </dict>
        </array>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-23
      • 2012-01-26
      • 1970-01-01
      • 2017-04-17
      • 2012-05-05
      相关资源
      最近更新 更多