限制UIDocumentPickerViewController从iCloud驱动器中拾取sqlite文件



我正在尝试将UIDocumentPickerViewController设置为只允许选择扩展名为.sqlite、具有动态UTI的文件。我不想将其定义为我的应用程序的文档类型,因为我无法处理任何sqlite文件,我只想启用iCloud驱动器的备份和传输。

NSString *typeForExt = (__bridge NSString *)UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, CFSTR("sqlite"), kUTTypeItem);
UIDocumentPickerViewController *iCloudPicker = [[UIDocumentPickerViewController alloc] initWithDocumentTypes:@[typeForExt] inMode:UIDocumentPickerModeImport];

如果我将类型定义为通用public.item,那么UIDocumentPickerViewController将允许选择sqlite文件,但每个文件都是一个选项。

正确的解决方案是在Info.plist的"导入的UTI"部分定义sqlite UTI。这并不意味着你的应用程序可以使用sqlite文件。它只是宣布UTI。

在Xcode中,选择您的目标。选择"信息"选项卡。向下转到"导入的UTI"部分,然后添加sqlite的定义。

相关内容

  • 没有找到相关文章

最新更新