让App支持系统/自定义类型文件打开(自定义类型:ofd)

2021-05-26  本文已影响0人  __Gavin__

一、支持打开

1、系统文件类型

苹果系统类型的官方文档:地址

以 PDF 为例,在 info.plist 里配置 Document types 如下:


image.png

2、自定义类型

添加自定义类型

以 ofd 文件为例,在 info.plist 里配置 Exported Type Identifiers 如下:


Xcode11 Xcode12
配置可打开类型

在 info.plist 里配置 Document types 如下:


image.png

二、支持导入

1、系统文件类型

以 PDF 为例,使用 UIDocumentPickerViewController 读取“文件”App内的 PDF 文档,代码如下:

let documentTypes = ["com.adobe.pdf"]
let documentVC = UIDocumentPickerViewController.init(documentTypes: documentTypes, in: .import)
documentVC.delegate = self
documentVC.transitioningDelegate = self
documentVC.modalPresentationStyle = .fullScreen
self.present(documentVC, animated: true, completion: nil)

2、自定义类型

添加自定义类型

以 ofd 文件为例,在 info.plist 里配置 Imported Type Identifiers 如下:


Xcode11 Xcode12
读取文件

使用 UIDocumentPickerViewController 读取“文件”App内的 ofd 文档,代码如下:

let documentTypes = ["com.adobe.pdf", "com.inbasis.ofd"]
let documentVC = UIDocumentPickerViewController.init(documentTypes: documentTypes, in: .import)
documentVC.delegate = self
documentVC.transitioningDelegate = self
documentVC.modalPresentationStyle = .fullScreen
self.present(documentVC, animated: true, completion: nil)

三、总结

  1. 系统文件读取
    • 无需配置,直接UIDocumentPickerViewController代码读取
  2. 非系统文件读取
    • 配置 Imported Type UTIs
    • UIDocumentPickerViewController代码读取
  3. 支持系统文件打开
    • 配置 Document types
  4. 支持非系统文件打开
    • 配置 Exported Type UTIs
    • 配置 Document types
上一篇 下一篇

猜你喜欢

热点阅读