小编Sle*_*man的帖子

MFMailComposeViewController仅在iOS 9中引发错误

我无法在没有在iOS 9模拟器中抛出致命错误的情况下打开MFMailComposeViewController.

相同的代码(目标C)在iOS 8.x及更低版本中完美运行但今天我安装了Xcode 7 beta 5,当我在iOS 9模拟器上运行应用程序时,我得到一个标题为"MailCompositionService意外退出"的对话框,当我查看时错误报告,我看到:

特定于应用程序的信息:***由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' - [__ NSArrayI isEqualToString:]:无法识别的选择器发送到实例0x7fd314280b10'

以NSException类型的未捕获异常终止abort()名为CoreSimulator 179 - Device:iPhone 6 - 运行时:iOS 9.0(13A4325c) - DeviceType:iPhone 6

邮件撰写视图出现时会发生错误.它会冻结几秒钟然后出现错误对话框.

打开邮件撰写视图的代码是:

if ([MFMailComposeViewController canSendMail])
{
    MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
    picker.mailComposeDelegate = self;
    [picker setSubject:@"Comment title"];
    [picker setMessageBody:@"Comment description" isHTML:NO];

    [self.window.rootViewController presentModalViewController:picker animated:YES];
    [picker release];
}
Run Code Online (Sandbox Code Playgroud)

如果知道,在应用程序崩溃之前,mailComposeController:didFinishWithResult:error:使用result= MFMailComposeResultCancellederror= 调用它nil.

我很欣赏如何找到此错误原因的提示.谢谢!

objective-c ios ios9

20
推荐指数
2
解决办法
8742
查看次数

iOS 升级是否保留 NSUserDefaults?

据我所知,是的:升级 iOS 不应删除 NSUserDefaults。只有删除应用程序才应该这样做。

但我正在调查一个只能通过 iOS 在升级后重置 NSUserDefaults 来解释的错误 - 到目前为止。这会发生吗?

nsuserdefaults ios

4
推荐指数
1
解决办法
1408
查看次数

标签 统计

ios ×2

ios9 ×1

nsuserdefaults ×1

objective-c ×1