ios - 如何在不打开 MailComposer 或 objective-c 中的新 View 的情况下通过代码发送邮件

标签 ios objective-c xib

-(IBAction)addbtnClick:(id)sender
{
    if([MFMailComposeViewController canSendMail]) {
        MFMailComposeViewController *mailCont = [[MFMailComposeViewController alloc] init];
          mailCont.mailComposeDelegate = self;

        [mailCont setSubject:@"yo!"];
        [mailCont setToRecipients:@[@"address@example.com"]];
       [mailCont setMessageBody:@"Don't ever want to give you up" isHTML:YES];

        [self presentViewController:mailCont animated:YES completion:nil];

    }
}
- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error {
    //handle any error
    [controller dismissViewControllerAnimated:YES completion:nil];
}

我有一个这样的代码可以工作。但是我不想打开 MFMailComposer。我只想点击按钮直接发送邮件。此代码打开 MFMailComposer。我不想打开它。请帮助。

最佳答案

检查下面的链接:--

SKPSMTPMessage

这个用于在没有任何用户交互的情况下在后台发送邮件...

使用下面的代码来使用这个库...

SKPSMTPMessage *emailMessage = [[SKPSMTPMessage alloc]init];
emailMessage.fromEmail = @"SENDER MAIL ID";
emailMessage.toEmail = @"RECEIPENT MAIL ID";
emailMessage.relayHost = @"smtp.gmail.com";
emailMessage.requiresAuth = YES;

您用于发送电子邮件的电子邮件的登录凭据

emailMessage.login = @"YOUR EMAIL ID";
emailMessage.pass = @"PASSWORD OF YOUR MAIL ACCOUNT";
emailMessage.subject = @"YOUR SUBJECT TO SEND MAIL";
emailMessage.wantsSecure = YES;
emailMessage.delegate = self;

NSString *password = @"PASSWORD";

NSString *message = [NSString stringWithFormat:@"Your password is : %@", password];

NSDictionary *plainPart = [NSDictionary dictionaryWithObjectsAndKeys:@"text/plain", kSKPSMTPPartContentTypeKey, message, kSKPSMTPPartMessageKey, @"8bit" , kSKPSMTPPartContentTransferEncodingKey, nil];

[emailMessage setParts:[NSArray arrayWithObjects:plainPart, nil]];
[emailMessage send];

希望这对你有帮助...

您必须提供您/公司电子邮件的登录电子邮件和密码,您要从中发送邮件...

emailMessage.login = @"YOUR EMAIL ID";
emailMessage.pass = @"PASSWORD OF YOUR MAIL ACCOUNT";

关于ios - 如何在不打开 MailComposer 或 objective-c 中的新 View 的情况下通过代码发送邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37923381/

相关文章:

ios - RESTKit:在覆盖之前将 GET 对象与本地持久化对象进行比较

ios - 如何以编程方式在 Collection View 中插入自定义单元格?

iphone - exteriorWhenContainedIn 未按预期工作

php - iOS URLSession 错误 "JSON text did not start with array or object and option to allow fragments not set."

ios - 使用 TableViewController 创建双委托(delegate)

ios - 如何从方法中获取挂起的 View Controller ?

iphone - 如何旋转 UIWebView 嵌入的视频

ios - 如何将应用程序委托(delegate)添加回 mainwindow.xib

ios - 我如何在 Xcode 中使用 XIB 简单地切换 View Controller ?

ios - 从 XIB 问题动态实例化自定义 UIView(这段代码有什么问题)?