私は、パラメーターの 1 つが .pfx ファイルである Web サービス呼び出しを行う iOS (iPhone/iPad) アプリに取り組んでいます。
ユーザーが電子メールの添付ファイルを選択して、自分の .pfx ファイルをアプリにインポートできるようにしたいと考えています (アプリは、カスタム ファイル タイプに対して既にこれを行っており、そのエントリは以下に示されていませんが、非常に似ています)。 .
以下に示すように、アプリの Info.plist ファイルで、CFBundleDocumentTypes タグと UTExportedTypeDeclarations タグにエントリを追加しました。UTExportedTypeDeclarations で、識別子「com.rsa.pkcs-12」に使用しました。これは、pfx ファイルの UTI の 1 つです。pfx ファイルの標準 MIME タイプ (application/x-pkcs12) を調べて入力しました。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
...
<key>CFBundleDocumentTypes</key>
<array>
...
<dict>
<key>CFBundleTypeName</key>
<string>Personal Information Exchange</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>LSItemContentTypes</key>
<array>
<string>com.rsa.pkcs-12</string>
</array>
</dict>
</array>
...
<key>UTExportedTypeDeclarations</key>
<array>
...
<dict>
<key>UTTypeConformsTo</key>
<array/>
<key>UTTypeDescription</key>
<string>Personal Information Exchange</string>
<key>UTTypeIdentifier</key>
<string>com.rsa.pkcs-12</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<string>pfx</string>
<key>public.mime-type</key>
<string>application/x-pkcs12</string>
</dict>
</dict>
</array>
</dict>
</plist>
これはうまくいきません。メールで pfx ファイルの添付ファイルを開くと、[設定] で開きます (ファイルをプロファイルとしてインストールしようとしています)。もちろん、pfx ファイル タイプは iOS に既に存在するため、UTExportedTypeDeclarations にエントリを作成する必要はありません。ただし、このエントリを削除しても違いはありません。両方のエントリで (「com.rsa.pkcs-12」ではなく) カスタム識別子を使用すると、同じ動作が発生します。
ユーザーに添付ファイルの拡張子の変更を強制したくありません。設定またはアプリでファイルを開くかどうかをユーザーに尋ねるように iOS に指示する方法はありますか?