uidocumentinteractioncontroller在邮件中打开不起作用

时间:2014-02-14 08:48:05

标签: ios

我在我的应用程序中使用了uidocumentinteractioncontroller,但是我发现,如果我没有为邮件设置邮件帐户,当我在“打开方式”菜单中单击邮件时,它只是解雇,没有警报或者有什么要告诉我,我没有邮件帐户。   也许我可以自己显示警报,如果我知道iPhone没有邮件帐户,我可以显示警报。

1 个答案:

答案 0 :(得分:1)

1-检查用户是否有电子邮件帐户

Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));
    if (mailClass != nil)
    {
        if ([mailClass canSendMail])
        {
            // show the email dialog
        }
        else
        {
            [self launchMailAppOnDevice];
        }
    }
    else
    {
        [self launchMailAppOnDevice];
    }

2-这是LaunchEmailAppOndevice

+ (void)launchMailAppOnDevice {

    NSString *recipients = [NSString stringWithFormat:@"mailto:%@?subject=%@",kEmailToAddress,kEmailSubject];
    NSString *body = [NSString stringWithFormat:@"&body=%@", kEmailBody];
    NSString *email = [NSString stringWithFormat:@"%@%@", recipients, body];
    email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:email]];
}

当您致电LaunchMailOnDevice时,系统会要求用户输入新帐户,然后您的消息将自动生成