iPhone的“应用内”电子邮件排队等待......现在也发送了?

时间:2010-09-20 13:57:24

标签: iphone objective-c email

用户尝试从我的iPhone应用程序发送一些“in app”电子邮件后...我想告诉他们发生了什么。 我在“didFinishWithResult”方法中添加了一些这样的代码:

if(result == MFMailComposeResultSent     ) NSLog(@"Email sent");   
if(result == MFMailComposeResultCancelled) NSLog(@"Email cancelled");
if(result == MFMailComposeResultFailed   ) NSLog(@"Can't send email.\nError # %d", result);
if(result == MFMailComposeResultSaved    ) NSLog(@"Email saved");

除非设备处于“飞行模式”,否则它适用于所有情况。

然后我收到“发送电子邮件”和“现在无法发送,排队等待以后发送”消息。

我有办法检测到吗?不应该有MFMailComposeQueuedForLater结果???

1 个答案:

答案 0 :(得分:0)

“结果”不可能有两个不同的值,这是你的代码片段所暗示的。

你没有显示足够的代码来调试它,但是猜测你实际拥有的不是if的集合,更像是这里显示的case语句:

http://books.google.com.au/books?id=FucBYCoIuWAC&pg=PA396&lpg=PA396&dq=MFMailComposeResultSent&source=bl&ots=z6UhJWpeTB&sig=zT5omjvETWzdMBm0OeSb5Cbic_k&hl=en&ei=38yXTN3mFcODcOOStd8J&sa=X&oi=book_result&ct=result&resnum=1&ved=0CBYQ6AEwAA#v=onepage&q=MFMailComposeResultSent&f=false

你省略了一个break语句。