Iphone MFMailComposer崩溃

Iphone MFMailComposer崩溃,iphone,objective-c,ios,Iphone,Objective C,Ios,在我的应用程序中,我正在使用MFMailComposer。当我在没有邮件配置的情况下发送邮件,而没有在设备上的邮件应用程序中输入邮件ID和密码时,它会崩溃 这是导致崩溃的原因: [self presentModalViewController:picker animated:YES]; 你应该打电话 [MFMailComposeViewController canSendMail] 在显示视图控制器之前,例如 if ([MFMailComposeViewController canSendM

在我的应用程序中,我正在使用MFMailComposer。当我在没有邮件配置的情况下发送邮件,而没有在设备上的邮件应用程序中输入邮件ID和密码时,它会崩溃

这是导致崩溃的原因:

[self presentModalViewController:picker animated:YES];
你应该打电话

[MFMailComposeViewController canSendMail]
在显示视图控制器之前,例如

if ([MFMailComposeViewController canSendMail]) {
    MFMailComposeViewController *composer = [[MFMailComposeViewController alloc] init];
    [self presentModalViewController:composer];
} else {
    // Show error message maybe
}

没错。您必须配置邮件应用程序,并检查设备是否可以发送邮件。因为若并没有邮件应用程序,我们就可以通过模拟器发送邮件,我认为这是不可能的。你的邮件接收人必须知道他/她从哪里收到邮件,我认为无法从代码中设置发件人。我可能错了,但这是我的观点,因为我也遇到过同样的情况

希望能有帮助

if ([MFMailComposeViewController canSendMail]) {
    MFMailComposeViewController *composer = [[MFMailComposeViewController alloc] init];
    [self presentModalViewController:composer];
} else {
    // Show error message maybe
}