bgh*_*bgh 5 iphone pfx uti ipad ios
我正在开发一个iOS(iPhone/iPad)应用程序来进行Web服务调用,其中一个参数是.pfx文件.
我希望用户能够通过在电子邮件中选择其附件来将自己的.pfx文件导入应用程序(该应用程序已针对自定义文件类型执行此操作,其条目未在下面显示,但非常相似) .
在应用程序的Info.plist文件中,我在CFBundleDocumentTypes标记中添加了一个条目,在UTExportedTypeDeclarations标记中添加了一个条目,如下所示.在UTExportedTypeDeclarations中,我用于标识符'com.rsa.pkcs-12',它是用于pfx文件的UTI之一.我查了一下并输入了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>
Run Code Online (Sandbox Code Playgroud)
这不起作用.当我在Mail中打开pfx文件附件时,它会在"设置"中打开(它希望将该文件作为配置文件安装).当然,pfx文件类型已经存在于iOS中,因此不必在UTExportedTypeDeclarations中创建条目; 但是,删除此条目没有任何区别.当我在两个条目中使用自定义标识符(而不是"com.rsa.pkcs-12")时,会发生相同的行为.
我不想强迫用户更改附件文件的扩展名.有没有办法让iOS告诉用户是否用设置或我的应用程序打开文件?
对于 .pfx 等特殊文件来说,这似乎是不可能的。
我更改了我的应用程序,以便它接受具有特殊扩展名的文件。该应用程序指示用户将 .pfx 文件的扩展名更改为特殊扩展名,然后通过电子邮件发送给他/她自己以将其导入应用程序。
| 归档时间: |
|
| 查看次数: |
2878 次 |
| 最近记录: |