【发布时间】:2011-01-29 16:14:16
【问题描述】:
我的 iPhone 应用正在使用 MFMailComposeViewController 类发送带有附件的应用内电子邮件。 仅当 MFMailComposeViewController 类的“canSendMail”方法返回 true (YES) 时,应用程序才会尝试显示邮件编写器对话框。具体来说,如果以下方法返回 YES,它会显示邮件编写器,否则会向用户显示一个错误警报对话框,说明设备上没有设置电子邮件帐户:
- (BOOL)canDeviceSendEmail
{
Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));
return mailClass != nil && [mailClass canSendMail];
}
一组测试人员报告说,即使在设备上设置了电子邮件帐户,他们也会收到此错误警报对话框。测试人员使用的是 OS 3.1.3 的 iPhone 3G。因此MFMailComposeViewController类一定已经存在,并且“canSendMail”方法一定返回了NO。
因此我的问题是:除了设备上没有设置电子邮件帐户的情况外,“canSendMail”方法在其他什么情况下可以返回NO?
~谢谢
【问题讨论】:
标签: iphone objective-c