Parametrelerden birinin .pfx dosyası olduğu bir web hizmeti araması yapan iOS (iPhone/iPad) uygulaması üzerinde çalışıyorum.Pfx dosyasını iOS uygulamasına alma
Kullanıcı, kendi e-postada ekini seçerek uygulamaya kendi .pfx dosyasını içe aktarabilmesini isterim (uygulama bunu aşağıda gösterilmeyen özel bir dosya türü için zaten yapar, ancak çok benzer).
Uygulamanın Info.plist dosyasında, CFBundleDocumentTypes etiketine ve aşağıda gösterildiği gibi UTExportedTypeDeclarations etiketine bir giriş ekledim. UTExportedTypeDeclarations tanımında 'com.rsa.pkcs-12' tanımlayıcısı için kullanılır, bu da pfs dosyaları için UTI'lerden biridir. Yukarı baktım ve bir pfx dosyasının standart MIME tipini girdim (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>
Bu çalışmaz. Mail'de bir pfx dosyası eki açtığımda, Ayarlar'da açılır (dosyayı bir profil olarak yüklemek ister). Tabii ki, pfx dosya türü iOS'ta zaten mevcut, bu yüzden UTExportedTypeDeclarations içinde bir giriş yapmak gerçekten gerekli olmamalıdır; Ancak, bu girişi kaldırmak hiçbir fark yaratmaz. Aynı davranış her iki girdide de özel bir tanımlayıcı kullandığımda oluşur ("com.rsa.pkcs-12" yerine).
Eklenti dosyasının uzantısını değiştirmek için kullanıcıyı zorlamak istemiyorum. IOS'a kullanıcıya, dosyayı Ayarlar veya uygulamam ile açıp açmayacağını sormanın bir yolu var mı?