0

電子メールで送信された sqlite ファイルをアプリにインポートさせようとしているので、info.plist にドキュメント タイプとカスタム UTI を作成しました。ただし、電子メールで送信された sqlite ファイルを受信すると、アプリで開くオプションが表示されません。

ドキュメント タイプの定義は次のとおりです。

文書タイプ

そしてここにUTIがあります

尿路感染症

これを次のように修正して、.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>
4

1 に答える 1

0

私はそれを修正しました - 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>
于 2013-06-04T19:57:55.723 に答える