iOS – 自动发送电子邮件(不是来自用户的帐户)

如何从应用程序自动发送电子邮件,而不是从用户的帐户发送电子邮件(没有用户交互是不可能的),而是从我的另一个电子邮件ID(代码中提供的用户名和密码)发送电子邮件?

是的,您无需用户交互即可发送电子邮件。 但是您必须在服务器端使用SMTP服务。

请参考: http ://iosameer.blogspot.in/2013/01/sending-e-mail-in-background-from-ios_25.html

你需要导入:

#import "SKPSMTPMessage.h" 

然后使用这个function:

 -(void)sendEmail { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; // SKPSMTPMessage *testMsg = [[SKPSMTPMessage alloc] init]; testMsg = [[SKPSMTPMessage alloc] init]; testMsg.fromEmail = [defaults objectForKey:@"fromEmail"]; testMsg.toEmail = [defaults objectForKey:@"toEmail"]; testMsg.bccEmail = [defaults objectForKey:@"bccEmal"]; testMsg.relayHost = [defaults objectForKey:@"relayHost"]; testMsg.requiresAuth = [[defaults objectForKey:@"requiresAuth"] boolValue]; if (testMsg.requiresAuth) { testMsg.login = [defaults objectForKey:@"login"]; testMsg.pass = [defaults objectForKey:@"pass"]; } testMsg.wantsSecure = [[defaults objectForKey:@"wantsSecure"] boolValue]; // testMsg.subject = @"Your Email subject"; testMsg.delegate = self; dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ [testMsg send]; }); } 

然后从需要发送电子邮件的地方调用此函数:

 [self sendEmail]; 

尝试一下,它正在工作……一切顺利!