我有一个 iOS 应用程序,我希望能够发送和接收它自己的文件类型的实例。流程将是:
- 用户 1 在应用程序中选择分享功能。这会生成我类型的文件(例如,file.myextension)并使用
UIActivityViewController
. 他们以某种方式将其发送给用户 2(AirDrop、电子邮件等)。 - 用户 2 收到文件并打开它。系统提供使用我的应用程序打开它。
我已经完成了第一部分。我可以生成 file.myExtension 并为其提供UIActivityViewController
文件 URL。这在用户 1 的设备上的 AirDrop 中正确显示,我可以使用 AirDrop 或电子邮件或其他方式传输文件。但是接收设备拒绝将我的应用程序显示为打开文件的选项。
我努力了:
- 根据此 Apple Q&A声明导出和导入的 UTI 和文档类型。我已经三重检查了所有 ID 是否相同,并且所有 plist 键都拼写正确。
- 我已经单独尝试了导出和导入的 UTI(使用文档类型)。这篇文章似乎说,如果我想打开一种文件类型,我想要的是 Imported 。这个 SO 答案说注册我拥有并想要打开的类型意味着我只想导出。单独工作都没有。
我的问题:我必须做什么才能打开我在 iOS 上拥有的文件扩展名?我是否同时定义了导入和导出的 UTI 以及文档类型?只是出口或进口之一?任何意外的必需属性?