MailCore2使用简介iOS版

OS发送邮件,似乎MFMailComposeViewController(MessageUI)简单方便,但如果你想实现应用内直接发送而绕过系统邮件,两种选择一自己实现,二使用第三方库。

MailCore库继第一个版本MailCore后发布了第二个版本MaiCore2,如果你觉得工程繁杂,可以用pod下载管理(以下demo在xcode6.4 OS10.10.5下载):

$ pod search mailcore2


-> MailCore2 (0.4.7) [DEPRECATED in favor of mailcore2-ios]
   Mailcore 2
   pod 'MailCore2', '~> 0.4.7'
   - Homepage: http://libmailcore.com
   - Source:  
   http://d.etpan.org/mailcore2-deps/mailcore2-ios/mailcore2-ios-5.zip
   - Versions: 0.4.7, 0.4.6, 0.4.5, 0.3.pre1, 0.2.pre1 [master repo]


-> mailcore2-ios (0.5.1)
   Mailcore 2 for iOS
   pod 'mailcore2-ios', '~> 0.5.1'
   - Homepage: http://libmailcore.com
   - Source:  
   http://d.etpan.org/mailcore2-deps/mailcore2-ios/mailcore2-ios-8.zip
   - Versions: 0.5.1, 0.5.0, 0.4.7 [master repo]


-> mailcore2-osx (0.5.2)
   Mailcore 2 for OS X
   pod 'mailcore2-osx', '~> 0.5.2'
   - Homepage: http://libmailcore.com
   - Source:  
   http://d.etpan.org/mailcore2-deps/mailcore2-osx/mailcore2-osx-7.zip
   - Versions: 0.5.2, 0.5.1, 0.5.0, 0.4.7 [master repo]

一、工程引入

下载包,解压后拷贝到你的工程文件里,然后按图显示:


将mailcore2.xcodeproj拖入你的工程里,此时会发现


二、类库引用

添加other linker flags 


Framework添加


三、API使用

写个方法测试一下

#import <MailCore/MailCore.h>

+(void)sendEmail:(NSString*)hosName
            port:(unsigned int)port
        userName:(NSString*)userName
        password:(NSString*)password
 fromDisplayName:(NSString*)fromDisplayName
      fromMaiBox:(NSString*)fromMaiBox
         toArray:(NSArray*)toArray
         ccArray:(NSArray*)ccArray
        bccArray:(NSArray*)bccArray
         subject:(NSString*)subject
         content:(NSString*)content
    resultBlock:(void(^)(NSError*))resultBlock
{
    MCOSMTPSession *smtpSession = [[MCOSMTPSession alloc]init];
    smtpSession.hostname = hosName;
    smtpSession.port = port;
    smtpSession.username = userName;
    smtpSession.password = password;
    smtpSession.authType = (MCOAuthTypeSASLPlain | MCOAuthTypeSASLLogin);
    smtpSession.connectionType = MCOConnectionTypeTLS;
    
    //来自
    MCOMessageBuilder *builder = [[MCOMessageBuilder alloc]init];
    [[builder header] setFrom:[MCOAddress addressWithDisplayName:fromDisplayName mailbox:fromMaiBox]];
    
    //接收
    if(toArray){
        NSMutableArray *to = [[NSMutableArray alloc]init];
        for (NSString *item in toArray) {
            [to addObject:[MCOAddress addressWithMailbox:item]];
        }
        [[builder header]setTo:to];
    }

    //抄送
    if(ccArray){
        NSMutableArray *cc = [[NSMutableArray alloc]init];
        for (NSString *item in ccArray) {
            [cc addObject:[MCOAddress addressWithMailbox:item]];
        }
        [[builder header]setTo:cc];
    }
    
    //密送
    if(bccArray){
        NSMutableArray *bcc = [[NSMutableArray alloc]init];
        for (NSString *item in ccArray) {
            [bcc addObject:[MCOAddress addressWithMailbox:item]];
        }
        [[builder header]setTo:bcc];
    }
    
    //主题
    [[builder header]setSubject:subject];
    
    //内容
    [builder setHTMLBody:content];
    
    NSData *rfc822Data = [builder data];
    MCOSMTPSendOperation *sendOperation = [smtpSession sendOperationWithData:rfc822Data];
    [sendOperation start:^(NSError *error) {
        resultBlock(error);
    }];
}

这是给日本留学的同学写的一个 Demo


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值