在我的Info.plist文件我有这样的:如何正确地告诉iOS我的应用程序处理CSV?
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>CSV Data</string>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>LSItemContentTypes</key>
<array>
<string>public.comma-separated-values-text</string>
</array>
</dict>
</array>
其中大多作品。
当某人在Windows上使用Excel电子表格并将其保存为CSV并将其电子邮件发送到他们的iPad时,就会发生螺杆事件,以便导入到我的应用程序中。
邮件客户端给了附件一个MIME类型的application/vnd.ms-excel,这可能被认为是不正确的。我希望以Excel格式使用MIME类型的文件实际上,不只是从Excel中导出的任何文件。
在iOS邮件应用程序中,我长按附件以在其他应用程序中打开该文件。这里是错误的地方。
我的应用程序包含在可用应用程序列表中。我不确定是否要调用这个正确或不正确的。该文件是CSV,并具有一个.csv后缀,所以我很高兴我的应用程序被邀请参加聚会。但是...
如果我然后点击我们的应用程序来打开该文件,它“不起作用”,这意味着我的AppDelegate中的OpenURL方法永远不会被调用。
在这种情况下,两个错误确实是正确的。如果我撒谎,并添加com.microsoft.excel.xls到LSItemContentTypes,然后将其“作品”,即(1)我的应用程序仍然得到了打开列出在对话框中,和(2)的iOS居然给我的文件,( 3)由于该文件并非真正采用Excel格式,而是CSV格式,因此我的应用程序处理得很好。
但现在该应用程序声称支持实际的Excel文件,它不这样做。
这看起来像是iOS中的一个bug。或者不要在对话框中列出我或者实际上给我这个文件。
还是我做错了什么?