ios - 在 iOS13 中无法在应用程序中打开自定义 UTI

标签 ios uti

我已经使用 AirDrop 很长时间了,以允许从我的应用程序内将文档从 iPhone 用户传递到 iPhone 用户。该应用程序生成一个简单的 CSV 文件,然后将其空投(或者也可以通过电子邮件发送)到另一台计算机,我的应用程序可以在其中打开它并导入它(UTI 已注册为 csv 文件类型)。这已经工作了很长一段时间,但我现在看到运行 iOS13 的设备不再将我的应用程序列为能够导入文件。如果我在 iOS12.4(或更早版本)上运行相同的代码,它可以正常工作,但在 iOS13.1 上,我的应用程序不再注册以接收数据。该设备可以完美地通过 AirDrop 到另一台设备,并且如果目标不是 iOS13,则导入工作正常。每当目的地是 iOS13 时,我的应用程序就不会被列为可接收。我看不出可能发生了什么变化。

信息设置(在 iOS13 之前完美运行)是:

enter image description here

我在 iOS 发行说明中看不到任何表明这一点发生了变化的内容。有人可以帮忙吗?

最佳答案

由于 CSV 文件类型不是您和您的应用发明的,因此您应该使用 CSV 的标准 UTI,而不是发明自己的文件类型。

这意味着您应该使用导入的 UTI 部分来声明 CSV UTI。导出 UTI 部分只能由您的应用特有的新 UTI 使用。

这是我导入的 CSV 格式的 UTI:

enter image description here

这是我的 CSV 文档类型:

enter image description here

有了这些文件,我可以在 iOS 13 下将 CSV 文件发送到我的应用程序。


另请记住,在 iOS 13 下,您可能需要点击共享表中列表末尾的“更多”图标才能看到您的应用(可能还包括其他应用)。

关于ios - 在 iOS13 中无法在应用程序中打开自定义 UTI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58149619/

相关文章:

ios - 同时分配多个对象

iphone - 如何创建一个小型 Mac 应用程序,通过 WiFi 网络从 iOS 应用程序接收数据?

objective-c - 自定义 UTI 未在 App 中打开

objective-c - 应用程序未显示在支持文档类型的 "Open With"菜单中

iphone - 本地化 Assets 目录

ios - 如何在两个单元格之间传递数据

iphone - 电子邮件附件、PDF 和 CSV 的问题

iOS : Share with UIActivityViewController & Default applications

ios - Firebase 将用户检索到 tableView

swift - 文档在文档浏览器中显示为灰色