【问题标题】:MFMailComposeViewController timing out on canSendMail?MFMailComposeViewController 在 canSendMail 上超时?
【发布时间】:2012-11-22 15:50:26
【问题描述】:

所以这个主题主要是不言自明的。当我踏入

if ([MFMailComposeViewController canSendMail] && [sender.titleLabel.text isEqualToString:@"Contact Support"])
        [self displaySupportComposerSheet];
    else if([MFMailComposeViewController canSendMail])
        [self displayDarrenComposerSheet];

我在控制台中收到此消息:超时消息邮件以确定 CanSendMail 状态

我还尝试了似乎是旧式的邮件撰写方式,即

  Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));

我仍然收到相同的消息。有什么想法吗?

另外,当我将 MFMailComposeViewController 设为属性时,它似乎不喜欢它,而不是每个方法的局部变量,这是为什么呢?

【问题讨论】:

  • ClassFromString 是“旧式”,因为在 3.0 左右,该类可能不可用。首先查找类并检查 nil 是检测服务可用性的一种方法。你现在可以放下它。作为一个调查步骤,您是否可以剥离所有其他代码并为 canSendMail 的结果设置一个 BOOL。 NSLog(@"可以发送邮件 = %d", theBool);在下一行。在那里放置一个断点并运行(不要跨步)。看看你在断点之前是否收到控制台消息。
  • 你正在尝试哪个 ios 版本??
  • 这是 iOS 6。我主要是在搞乱它,因为当应用程序第一次运行并且第一次单击邮件按钮时,它会有点滞后,很可能是由于在方法时实例化 MFMailComposeViewController被调用,所以这就是我开始搞砸它的原因。
  • @terry lewis 你的问题解决了吗?

标签: iphone ios mfmailcomposeviewcontroller


【解决方案1】:

在我调用 [[MFMailComposer alloc] init] 之前,我在编写要添加为附件的大型 PDF 文件时遇到此错误。当我将 Composer 创建移动到 PDF 创建器的大量内存消耗之前的某个点时,我不再在日志中看到此错误。

【讨论】:

    猜你喜欢
    • 2012-08-17
    • 2011-01-29
    • 2019-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多