问题 为iOS应用创建自己的UTI


我正在开发的应用程序有自己的文件的自定义文件格式,我希望能够使用iOS的“打开...”功能,让用户可以使用互相发送电子邮件,然后直接在应用程序中打开它。

我已经在Info.plist文件中添加了CFBundleDocumentType内容,但问题是LSItemContentTypes。 从我读过的,我需要提供实际的文件 作为一个UTI,而不仅仅是说“.myfileextension”,我找不到很多关于如何在iOS应用程序中创建UTI的内容。

谁知道?


8018
2017-12-27 15:49


起源



答案:


您需要阅读Apple的以下主题:

采用统一类型标识符
统一类型标识符简介概述
声明新的统一类型标识符

从文档:

如果您的应用程序使用专有数据格式,则应在应用程序包的Info.plist文件中声明它们。一些准则:

  • 您的UTI字符串必须是唯一的。遵循以com.companyName开头的反向DNS格式是确保唯一性的简单方法。虽然系统可以支持具有相同规范的不同UTI字符串,但反之则不然。

  • 如果您的代码依赖于可能不存在的第三方UTI类型   在系统上,你应该声明   那些UTI作为进口类型   你的捆绑。

  • 如果您的专有类型是一个或多个现有类型的子类型,请务必添加一致性信息。在大多数情况下,除非您在捆绑包中声明该类型,否则不应指定与非公共类型的一致性。有关公共和Apple定义的UTI的列表,请参阅“系统声明的统一类型标识符”


13
2017-12-27 16:08