【问题标题】:Sending an email causes - Connection interrupted发送电子邮件原因 - 连接中断
【发布时间】:2016-10-18 08:14:08
【问题描述】:

基本上我想做的是发送一封电子邮件:

-(void) sendAnEmail {

    if ([MFMailComposeViewController canSendMail])
    {
        MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init];
        mail.mailComposeDelegate = self;
        [mail setSubject:@"Subject"];
        [mail setMessageBody:@"Hey, check this out!" isHTML:NO];
        [mail setToRecipients:@[@"testing@gmail.com"]];

        [self presentViewController:mail animated:YES completion:NULL];
    }
    else
    {
        NSLog(@"device cannot send email");
    }
}

没有错误,没有警告。如果这个 void 是输出:

BSXPCMessage 收到消息错误:连接中断

我该如何解决这个问题?

测试设备 - 5S(8.3)

【问题讨论】:

  • 这段代码真的被调用了吗?
  • 你对 CIFilter 有什么操作吗?
  • 好吧,我试图发送带有附件的电子邮件,同样的问题发生了,所以我尝试了一些简单的东西,这是实际的代码
  • @alexburtnik wtf 非常感谢您的提示-您太棒了:D您能解释一下为什么会在答案中发生这种情况,我会将其标记为正确

标签: ios objective-c xcode ios8 mfmailcomposeviewcontroller


【解决方案1】:
  1. 来自this Apple Guide我可以理解XPC服务应该通过某种方式分离不稳定的组件来防止应用程序崩溃。

  2. 崩溃本身是由 CIFilter 中的某种错误引起的。 很难判断您的代码到底出了什么问题,因为问题显然与MFMailComposeViewController 无关。如果您使用以下选项创建 CIContext

[CIContext contextWithOptions: @{kCIContextUseSoftwareRenderer : @(NO)}];

尝试用YES替换NO

【讨论】:

    猜你喜欢
    • 2014-08-31
    • 2012-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-06
    • 2012-11-11
    • 2020-10-30
    • 2014-10-10
    相关资源
    最近更新 更多