UIDocumentMenuViewController initWithDocumentTypes:inMode: 只能使用 Import 或 Open 模式调用
UIDocumentMenuViewController initWithDocumentTypes:inMode: can only be called with mode Import or Open
在我的 iOS 应用程序中,我打开了一个 UIDocumentMenuViewController
。当我使用 UIDocumentPickerModeImport
模式调用它时,一切正常(我所有的 iCloud 权利都已设置)。
然而,当我使用 UIDocumentPickerModeExportToService
调用它时,应用程序崩溃并出现以下错误:
Assertion failure in -[UIDocumentMenuViewController initWithDocumentTypes:inMode:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3600.6.22/UIDocumentMenuViewController.m:71
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIDocumentMenuViewController initWithDocumentTypes:inMode:] can only be called with mode Import or Open'
我做错了什么?为什么只能用 Import 或 Open 模式调用?
我的代码:
UIDocumentMenuViewController *exportMenu = [[UIDocumentMenuViewController alloc] initWithDocumentTypes:@[@"public.image"]
inMode:UIDocumentPickerModeExportToService];
exportMenu.delegate = self;
[self presentViewController:exportMenu animated:YES completion:nil];
这发生在模拟器和我测试过的两台设备上(都是 运行 iOS 10)。
任何帮助将不胜感激!
我刚找到答案:当想要 export 时,您需要使用不同的初始化方法:initWithURL:inMode:
我希望例外在这种情况下会更有帮助:)
在我的 iOS 应用程序中,我打开了一个 UIDocumentMenuViewController
。当我使用 UIDocumentPickerModeImport
模式调用它时,一切正常(我所有的 iCloud 权利都已设置)。
然而,当我使用 UIDocumentPickerModeExportToService
调用它时,应用程序崩溃并出现以下错误:
Assertion failure in -[UIDocumentMenuViewController initWithDocumentTypes:inMode:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3600.6.22/UIDocumentMenuViewController.m:71
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIDocumentMenuViewController initWithDocumentTypes:inMode:] can only be called with mode Import or Open'
我做错了什么?为什么只能用 Import 或 Open 模式调用?
我的代码:
UIDocumentMenuViewController *exportMenu = [[UIDocumentMenuViewController alloc] initWithDocumentTypes:@[@"public.image"]
inMode:UIDocumentPickerModeExportToService];
exportMenu.delegate = self;
[self presentViewController:exportMenu animated:YES completion:nil];
这发生在模拟器和我测试过的两台设备上(都是 运行 iOS 10)。
任何帮助将不胜感激!
我刚找到答案:当想要 export 时,您需要使用不同的初始化方法:initWithURL:inMode:
我希望例外在这种情况下会更有帮助:)