2

在我的 iOS 应用程序中,我打开了一个UIDocumentMenuViewController. 当我使用该UIDocumentPickerModeImport模式调用它时,一切正常(我的所有 iCloud 权利都已设置)。

但是,当我使用 调用它时UIDocumentPickerModeExportToService,应用程序会因以下错误而崩溃:

-[UIDocumentMenuViewController initWithDocumentTypes:inMode:] 中的断言失败,/BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3600.6.22/UIDocumentMenuViewController.m:71

由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“-[UIDocumentMenuViewController initWithDocumentTypes:inMode:] 只能使用模式 Import 或 Open 调用”

我究竟做错了什么?为什么只能使用 Import 或 Open 模式调用?

我的代码:

UIDocumentMenuViewController *exportMenu = [[UIDocumentMenuViewController alloc] initWithDocumentTypes:@[@"public.image"]
                                                                                                    inMode:UIDocumentPickerModeExportToService];
    
exportMenu.delegate = self;
[self presentViewController:exportMenu animated:YES completion:nil];

这发生在模拟器和我测试过的两台设备上(都运行 iOS 10)。

任何帮助将不胜感激!

4

1 回答 1

7

我刚刚找到了答案:当想要导出时,您需要使用不同的 init 方法:initWithURL:inMode:

我希望在这种情况下例外会更有帮助:)

于 2017-03-24T00:59:09.353 回答