【问题标题】:Opening Custom UTI in App not working in iOS13在应用程序中打开自定义 UTI 在 iOS13 中不起作用
【发布时间】:2019-09-28 19:26:18
【问题描述】:

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

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

我在 iOS 发行说明中看不到任何表明这种情况已经发生变化的内容。有人可以帮忙吗?

【问题讨论】:

    标签: ios uti


    【解决方案1】:

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

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

    这是我为 CSV 导入的 UTI:

    这是我的 CSV 文档类型:

    在 iOS 13 下,我可以毫无问题地将 CSV 文件发送到我的应用程序。


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

    【讨论】:

    • 谢谢。这样做非常有意义,现在它可以工作了(我有一个更进一步的问题,但那是在我的应用程序中)。我想知道为什么它在 iOS13 之前与导出的 UTI 一起工作?不过,我不会对此感到怀疑。谢谢你的帮助。
    • 我也在努力解决这个问题......有什么办法可以让我的应用程序出现在建议列表的首位?我担心如果用户必须单击“更多”按钮才能找到我的应用并打开文件,他们可能会感到困惑。
    猜你喜欢
    • 2012-01-26
    • 2013-05-29
    • 2011-10-06
    • 1970-01-01
    • 2018-05-06
    • 2017-07-20
    • 2020-03-26
    • 1970-01-01
    • 2012-03-21
    相关资源
    最近更新 更多