限制 UIDocumentPickerViewController 从 iCloud Drive 中选择 sqlite 文件
Limit UIDocumentPickerViewController to pick sqlite files from iCloud Drive
我正在尝试将 UIDocumentPickerViewController
设置为仅允许选择带有动态 UTI 的扩展名为 .sqlite 的文件。我不想将其定义为我的应用程序的文档类型,因为我无法处理任何 sqlite 文件,我只想使用 iCloud 驱动器启用备份和传输。
NSString *typeForExt = (__bridge NSString *)UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, CFSTR("sqlite"), kUTTypeItem);
UIDocumentPickerViewController *iCloudPicker = [[UIDocumentPickerViewController alloc] initWithDocumentTypes:@[typeForExt] inMode:UIDocumentPickerModeImport];
UIDocumentPickerViewController
如果我将类型定义为通用 public.item 将允许选择 sqlite 文件,但每个文件都是一个选项。
正确的解决方案是在 Info.plist 的 "Imported UTIs" 部分定义 sqlite UTI。这并不声明您的应用程序可以使用 sqlite 文件。它只是声明 UTI。
在Xcode中,select你的目标。 Select 信息选项卡。转到“导入的 UTI”部分并添加 sqlite 的定义。
我正在尝试将 UIDocumentPickerViewController
设置为仅允许选择带有动态 UTI 的扩展名为 .sqlite 的文件。我不想将其定义为我的应用程序的文档类型,因为我无法处理任何 sqlite 文件,我只想使用 iCloud 驱动器启用备份和传输。
NSString *typeForExt = (__bridge NSString *)UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, CFSTR("sqlite"), kUTTypeItem);
UIDocumentPickerViewController *iCloudPicker = [[UIDocumentPickerViewController alloc] initWithDocumentTypes:@[typeForExt] inMode:UIDocumentPickerModeImport];
UIDocumentPickerViewController
如果我将类型定义为通用 public.item 将允许选择 sqlite 文件,但每个文件都是一个选项。
正确的解决方案是在 Info.plist 的 "Imported UTIs" 部分定义 sqlite UTI。这并不声明您的应用程序可以使用 sqlite 文件。它只是声明 UTI。
在Xcode中,select你的目标。 Select 信息选项卡。转到“导入的 UTI”部分并添加 sqlite 的定义。