skpsmtpmessage 是ios第三方后台发送邮件库
原文地址:http://www.cnblogs.com/U-tansuo/p/ios_send_email.html
-(void)statrUpLoad:(id)sender
{ SKPSMTPMessage *testSend = [[SKPSMTPMessage alloc]init]; testSend.fromEmail = @"发件邮箱"; testSend.toEmail = @"收件邮箱"; testSend.relayHost = @"smtp.163.com"; testSend.requiresAuth = YES; testSend.login = @"用户名; testSend.pass = @"密码; testSend.subject = [NSString stringWithCString:"测试" encoding:NSUTF8StringEncoding]; testSend.ccEmail = @"抄送邮件"; testSend.wantsSecure = YES; testSend.delegate = self; NSDictionary *plainPart = [NSDictionary dictionaryWithObjectsAndKeys:@"text/plain",kSKPSMTPPartContentTypeKey, @"This is a tést messåge.",kSKPSMTPPartMessageKey,@"8bit",kSKPSMTPPartContentTransferEncodingKey,nil]; NSString *vcfPath = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"vcf"]; NSData *vcfData = [NSData dataWithContentsOfFile:vcfPath]; //通讯录 NSDictionary *vcfPart = [NSDictionary dictionaryWithObjectsAndKeys:@"text/directory;\r\n\tx-unix-mode=0644;\r\n\tname=\"test.vcf\"",kSKPSMTPPartContentTypeKey, @"attachment;\r\n\tfilename=\"test.vcf\"",kSKPSMTPPartContentDispositionKey,[vcfData encodeBase64ForData],kSKPSMTPPartMessageKey,@"base64",kSKPSMTPPartContentTransferEncodingKey,nil]; //发图片附件 NSString *imgPath = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"jpg"]; NSData *imgData = [NSData dataWithContentsOfFile:imgPath]; NSDictionary *imagePart = [NSDictionary dictionaryWithObjectsAndKeys:@"image/jpg;\r\n\tx-unix-mode=0644;\r\n\tname=\"test.jpg\"",kSKPSMTPPartContentTypeKey, @"attachment;\r\n\tfilename=\"test.jpg\"",kSKPSMTPPartContentDispositionKey,[imgData encodeBase64ForData],kSKPSMTPPartMessageKey,@"base64",kSKPSMTPPartContentTransferEncodingKey,nil]; //发视频附件 //attach video NSString *videoPath = [[NSBundle mainBundle] pathForResource:@"video" ofType:@"mov"]; NSData *videoData = [NSData dataWithContentsOfFile: videoPath]; NSDictionary *videoPart = [NSDictionary dictionaryWithObjectsAndKeys:@"video/quicktime;\r\n\tx-unix-mode=0644;\r\n\tname=\"video.mov\"",kSKPSMTPPartContentTypeKey, @"attachment;\r\n\tfilename=\"video.mov\"",kSKPSMTPPartContentDispositionKey,[videoData encodeBase64ForData],kSKPSMTPPartMessageKey,@"base64",kSKPSMTPPartContentTransferEncodingKey,nil]; testMsg.parts = [NSArray arrayWithObjects:plainPart,vcfPart, imagePart, videoPart, nil]; dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ [testSend send]; });}