iOS-自定义格式文件导入导出
2020-04-17 本文已影响0人
CoderCurtis
需求描述
实现类似于iOS版XMind的文件(.xmind格式)导入导出功能,并且用该软件再次打开,仍然可以编辑
步骤:
- 选中target
- 点击Info
- 设置Document Types和Exported UTIs
Document Types中的Types与Exported UTIs中的identifier填写的是一致的你自定义的字符串
Exported UTIs中的 teamtree为自定义文件格式
效果:
分享面板
1221587112065_.pic.jpg
通过微信分享,在微信中显示样式
image.png在微信里点击该文件,用其他应用打开,可以看到这里显示出了设置的文件图标,很显然这里第一行的应用不包括能打开自定义格式teamtree的应用,点击"更多"
image.png列表中找到能打开自定义格式teamtree的应用
image.png分享面板
遵循代理UIDocumentInteractionControllerDelegate
声明:
@property (strong, nonatomic) UIDocumentInteractionController *documentController;
分享:
NSString *filePath = self.listModel.filePath;
_documentController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:filePath]];
_documentController.delegate = self;
_documentController.UTI = @"com.xxx.xxx.teamtree";
[_documentController presentOpenInMenuFromRect:CGRectZero inView:self.view animated:YES];
拷贝到"XXApp" 跳转到XXApp,AppDelegate的如下方法会响应 然后在该方法里处理自己的逻辑
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options{}
参考文档