我正在尝试使用MailCore发送电子邮件,但电子邮件未收到。如果我做错了,请建议。以下代码用于发送电子邮件:
-(void) sendMail{
NSLog(@"entered");
CTCoreMessage *testMsg = [[CTCoreMessage alloc] init];
[testMsg setTo:[NSSet setWithObject:[CTCoreAddress addressWithName:@"recipients name" email:@"recipient@gmail.com"]]];
[testMsg setFrom:[NSSet setWithObject:[CTCoreAddress addressWithName:@"sender name(me)" email:@"my_e_mail@google.com"]]];
[testMsg setBody:@"This is a test message!"];
[testMsg setSubject:@"This is a subject"];
NSLog(@"Init values");
NSError *error;
BOOL success = [CTSMTPConnection sendMessage:testMsg
server:@"smtp.gmail.com"
username:@"my_e_mail"
password:@"pwd"
port:587
connectionType:CTSMTPConnectionTypeStartTLS
useAuth:YES
error:&error];
NSLog(@"Success is %c", success);
if (!success) {
// Present the error
NSLog(@"Mail not sent");
}
}
答案 0 :(得分:-1)
这是您可以使用的示例代码:
MCOSMTPSession *smtpSession = [[MCOSMTPSession alloc] init];
smtpSession.hostname = @"smtp.gmail.com";
smtpSession.port = 465;
smtpSession.username = USERNAME;
smtpSession.password = PASSWORD;
smtpSession.connectionType = MCOConnectionTypeTLS;
MCOMessageBuilder * builder = [[MCOMessageBuilder alloc] init];
[[builder header] setFrom:[MCOAddress addressWithDisplayName:nil mailbox:USERNAME]];
NSMutableArray *to = [[NSMutableArray alloc] init];
for(NSString *toAddress in RECIPIENTS) {
MCOAddress *newAddress = [MCOAddress addressWithMailbox:toAddress];
[to addObject:newAddress];
}
[[builder header] setTo:to];
NSMutableArray *cc = [[NSMutableArray alloc] init];
for(NSString *ccAddress in CC) {
MCOAddress *newAddress = [MCOAddress addressWithMailbox:ccAddress];
[cc addObject:newAddress];
}
[[builder header] setCc:cc];
NSMutableArray *bcc = [[NSMutableArray alloc] init];
for(NSString *bccAddress in BCC) {
MCOAddress *newAddress = [MCOAddress addressWithMailbox:bccAddress];
[bcc addObject:newAddress];
}
[[builder header] setBcc:bcc];
[[builder header] setSubject:SUBJECT];
[builder setHTMLBody:BODY];
NSData * rfc822Data = [builder data];
MCOSMTPSendOperation *sendOperation = [smtpSession sendOperationWithData:rfc822Data];
[sendOperation start:^(NSError *error) {
if(error) {
NSLog(@"%@ Error sending email:%@", USERNAME, error);
} else {
NSLog(@"%@ Successfully sent email!", USERNAME);
}
您可以在此处找到此示例代码(Sample Code)的参考。