我有一个应用程序来存储用户创建的内容与自定义文件(自定义扩展/ UTI),并希望它支持使用UIDocumentPicker的iCloud驱动器。删除UIDocumentPicker导入/导出与自定义UTI
1. 问题是,一旦文件被导入,它就会变灰,变得无法导入。 尝试了几件事情后,我发现问题出在custome UTI上。 如果我只是将文件扩展名更改为一个知名的文件扩展名,例如pdf,它就可以工作。
我还使用了下面的示例代码(只是选择一个文档,并且什么都不做)来测试。 如果我选择一个带有自定义扩展名的文件,它将在导入一次后变为灰色。 pdf文件没有问题 - 我可以一次又一次地导入它们。
我错过了什么吗?
2. 另一个问题是,如果我将文档类型指定为@“public.composite-content”,我可以在根中选择一个pdf文档,但不能访问包含pdf文件的文件夹。如果我使用kUTTypePDF,我可以做到这一点。 这是预期的行为,还是只是一个错误?
-(void)openDocumentPicker
{
UIDocumentPickerViewController *vc = [[UIDocumentPickerViewController alloc] initWithDocumentTypes:@[@"public.composite-content"] inMode:UIDocumentPickerModeImport];
vc.delegate = self;
vc.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentViewController:vc animated:YES completion:nil];
}
- (void)documentPicker:(UIDocumentPickerViewController *)controller didPickDocumentAtURL:(NSURL *)url {
return;
}