我正在开发iOS App上的文件共享,我是UIDocumentPickerViewController
的新手。我不知道为什么我的应用程序崩溃了。
UIDocumentPickerViewController *documentPicker = [[UIDocumentPickerViewController alloc] initWithDocumentTypes:@[@"public.image"] inMode:UIDocumentPickerModeImport];
documentPicker.delegate = self;
documentPicker.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentViewController:documentPicker animated:YES completion:nil];
应用程序在突出显示的行上崩溃。
以前有人这样做过吗?我想像
下面的附件那样做答案 0 :(得分:48)
请参阅Apple Documentation上的Prerequisite
部分:
在您的应用程序可以使用文档选择器之前,您必须打开 Xcode中的iCloud Documents功能
让我知道这是否可以解决您的问题!
答案 1 :(得分:3)
即使设置了所有权利,在设备上(不是模拟器)上运行时,仍会偶尔发生这种情况。
我到目前为止找到的最佳解决方案是:
UIDocumentPickerViewController
。UIDocumentPickerViewController
将按预期启动。根据我的经验,它将一直有效,直到您安装TestFlight构建。有时您需要在重新启动Xcode后再次执行此操作 这肯定看起来像是在设备上安装权利的错误。
(Xcode 7.2,iOS 9.2)
答案 2 :(得分:3)
swift 3.0 您可以选择所有文档。
let documentPicker = UIDocumentPickerViewController(documentTypes: ["com.apple.iwork.pages.pages", "com.apple.iwork.numbers.numbers", "com.apple.iwork.keynote.key","public.image", "com.apple.application", "public.item","public.data", "public.content", "public.audiovisual-content", "public.movie", "public.audiovisual-content", "public.video", "public.audio", "public.text", "public.data", "public.zip-archive", "com.pkware.zip-archive", "public.composite-content", "public.text"], in: .import)
documentPicker.delegate = self
present(documentPicker, animated: true, completion: nil)
答案 3 :(得分:2)
UIDocumentPickerViewController *documentPicker = [[UIDocumentPickerViewController alloc] initWithDocumentTypes:@[@"com.apple.iwork.pages.pages", @"com.apple.iwork.numbers.numbers", @"com.apple.iwork.keynote.key"] inMode:UIDocumentPickerModeImport];