我正在开发的应用为其文件提供了自定义文件格式,我希望能够使用" Open In ..." iOS的功能,允许用户,例如互相发送电子邮件,然后直接在应用程序中打开它。
我已经在Info.plist文件中添加了CFBundleDocumentType内容,但问题是LSItemContentTypes。 From what I've read,我需要提供实际文件 作为一个UTI,而不仅仅是说" .myfileextension",我找不到很多关于如何在iOS应用程序中创建UTI的信息。
有人知道吗?
答案 0 :(得分:13)
您需要阅读Apple的以下主题:
Adopting Uniform Type Identifiers
Introduction to Uniform Type Identifiers Overview
Declaring New Uniform Type Identifiers
来自文档:
如果您的应用程序使用专有数据格式,则应在应用程序包的Info.plist文件中声明它们。一些指导原则:
您的UTI字符串必须是唯一的。遵循以com.companyName开头的反向DNS格式是确保唯一性的简单方法。虽然系统可以支持具有相同规范的不同UTI字符串,但反之则不然。
如果您的代码依赖于可能不存在的第三方UTI类型 在系统上,你应该声明 那些UTI作为进口类型 你的包。
如果您的专有类型是一个或多个现有类型的子类型,请务必添加一致性信息。在大多数情况下,除非您在包中声明该类型,否则不应指定与非公共类型的一致性。有关公共和Apple定义的UTI的列表,请参阅“系统声明的统一类型标识符”