iOS开发笔记--iOS后台发送邮件

skpsmtpmessage 是ios第三方后台发送邮件库 https://github.com/jetseven/skpsmtpmessage.git

原文地址: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];
    });
}

时间: 2024-08-10 06:15:13

iOS开发笔记--iOS后台发送邮件的相关文章

iOS开发笔记--iOS中的多线程

摘要 本文主要介绍iOS开发中的三种多线程技术:NSThread, NSOperation/NSOperationQueue, GCD.以及在多线程编程中的注意点和小技巧. 多线程 NSThread NSOperation/NSOperationQueue GCD 目录[-] iOS中的多线程 iOS的三种多线程技术特点: GCD基本思想 队列: 操作: 不同队列中嵌套同步操作dispatch_sync的结果: 同步操作dispatch_sync的应用场景: GCD优点: GCD队列: NSOp

iOS开发笔记--iOS开发规范

iOS开发规范 原文地址:http://blog.csdn.net/pjk1129/article/details/45146955 引子 在看下面之前,大家自我检测一下自己写的代码是否规范,代码风格是否过于迥异阅读困难?可以相互阅读同伴的代码,是否存在阅读障碍? 若存在晦涩难懂的,理解成本增大的代码,说明你的团队需要自省了. 下面总结一下OC编程中的一些代码规范(苹果官方推荐的).以OC为示例,但不局限于OC,也可以被当作别的编程语言的开发规范约定(仅需要把OC特有的东西按照你所使用的语言的惯

iOS开发笔记--iOS图解多线程

iOS图解多线程 前言 多线程一直是iOS开发中重中之重的话题,无论是面试还是真正在公司中进行业务开发,都会经常使用到多线程来开发.笔者在简书上看到一张图,记录的是多线程的相关知识,笔者认为这是非常好的,推荐给大家! 多线程 原文地址:http://www.henishuo.com/ios-multithread-detail/

iOS开发笔记--iOS基于MVC的项目重构总结

关于MVC的争论 关于MVC的争论已经有很多,对此我的观点是:对于iOS开发中的绝大部分场景来说,MVC本身是没有问题的,你认为的MVC的问题,一定是你自己理解的问题(资深架构师请自动忽略本文). 行文过程中查阅了互联网上的大量文档,其中水平良莠不齐(最常见的就是MVC改个名就当MVVM的),当然也有许多非常有价值的参考资料,在文末会逐一列举,以供参考. 原文地址:http://www.cocoachina.com/ios/20160519/16346.html iOS中的MVC和MVP Coc

iOS开发笔记--iOS动画总结

摘要 本文主要介绍核iOS中的动画:核心动画Core Animation, UIView动画, Block动画, UIImageView的帧动画. 核心动画Core Animation UIView动画 Block动画 UIImageView的帧动画 iOS中的动画 Core Animation CAAnimation: CAPropertyAnimation CAKeyframeAnimation CATransition UIView动画 Block动画 UIImageView的帧动画 UI

iOS开发笔记--iOS中的触摸事件和手势处理

iOS中的事件可以分为三大类:原文:http://my.oschina.net/aofe/blog/268749 1> 触摸事件 2> 加速计事件 3> 远程控制事件 响应者对象 在iOS中不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并处理事件.我们称之为"响应者对象". UIApplication,UIViewController,UIView都继承自UIResponder,因此它们都是响应者对象,都能够接收并处理事件. UIRespon

iOS开发笔记--iOS应用架构谈

iOS应用架构谈 开篇 iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案 iOS应用架构谈 网络层设计方案 iOS应用架构谈 动态部署方案 iOS应用架构谈 本地持久化方案 缘由 之前安居客iOS app的第二版架构大部分内容是我做的,期间有总结了一些经验.在将近一年之后,前同事zzz在微信朋友圈上发了一个问题:假如问你一个iOS or Android app的架构,你会从哪些方面来说呢? 当时看到这个问题正好在乘公车回家的路上,闲来无聊就答了一把.在zzz在微信朋友圈上追问

iOS开发笔记--IOS开发者常用的10个Xcode插件

IOS开发者常用的10个Xcode插件 [导读] 一个合适的插件意味着它可以适应不同的开发环境,Sublime Text 和TextMate就是很好的例子.你知道Xcode也支持插件吗? 一个合适的插件意味着它可以适应不同的开发环境,Sublime Text 和TextMate就是很好的例子.你知道Xcode也支持插件吗?如果你不知道我也不会感到惊讶,因为苹果公司并没有在花力气去宣传Xcode的这个功能,而且官网上关于为Xcode创建插件的文档也很少. 幸运的是这并没有阻止开发者为Xcode创建

iOS开发笔记--iOS国际化与NSLocalizedString的使用

NSLocalizedString的定义 来看宏定义部分:(原文地址:http://blog.csdn.net/aries4ever/article/details/8185405) [cpp] view plaincopyprint? #define NSLocalizedString(key, comment) \ [[NSBundle mainBundle] localizedStringForKey:(key) value:@"" table:nil] 第二个参数comment