मैं एक आईओएस (आईफोन/आईपैड) ऐप पर काम कर रहा हूं जो एक वेब सेवा कॉल करता है जहां पैरामीटर में से एक एक .pfx फ़ाइल है।आईओएस एप्लिकेशन में पीएफएक्स फ़ाइल आयात करना
मैं चाहता हूं कि उपयोगकर्ता ईमेल में अपना अनुलग्नक चुनकर ऐप में अपनी खुद की .pfx फ़ाइल आयात करने में सक्षम हो (ऐप पहले से ही एक कस्टम फ़ाइल प्रकार के लिए करता है, जिनकी प्रविष्टियां नीचे नहीं दिखायी जाती हैं, लेकिन बहुत अधिक समानता है)।
ऐप की Info.plist फ़ाइल में, मैंने CFBundleDocumentTypes टैग में एक प्रविष्टि और UTExportedTypeDeclarations टैग में एक प्रविष्टि जोड़ दी है, जैसा कि नीचे दिखाया गया है। UTExportedTypeDeclarations में मैंने पहचानकर्ता 'com.rsa.pkcs-12' के लिए उपयोग किया, जो कि पीटीएक्स फाइलों के लिए यूटीआई में से एक है। मैंने देखा और एक पीएफएक्स फ़ाइल (एप्लिकेशन/एक्स-पीकेसीएस 12) के मानक एमआईएम प्रकार में प्रवेश किया।
<?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>
यह काम नहीं करता है। जब मैं मेल में एक पीएफएक्स फ़ाइल अनुलग्नक खोलता हूं, तो यह सेटिंग में खुलता है (यह फ़ाइल को प्रोफ़ाइल के रूप में स्थापित करना चाहता है)। बेशक, आईएफओ में पीएफएक्स फ़ाइल का प्रकार पहले से मौजूद है, इसलिए यूटीईएक्सपोर्टेड टाइप टाइप में प्रवेश करने के लिए वास्तव में आवश्यक नहीं होना चाहिए; हालांकि, इस प्रविष्टि को हटाने से कोई फर्क नहीं पड़ता। वही व्यवहार तब होता है जब मैं दोनों प्रविष्टियों में कस्टम पहचानकर्ता का उपयोग करता हूं (बजाय "com.rsa.pkcs-12")।
मैं उपयोगकर्ता को अनुलग्नक की फ़ाइल का विस्तार बदलने के लिए मजबूर नहीं करना चाहता। क्या कोई तरीका है कि मैं आईओएस को उपयोगकर्ता से पूछने के लिए कह सकता हूं कि सेटिंग्स या मेरे ऐप के साथ फाइल खोलना है या नहीं?