使用SKPSMTPMessage库发送 邮件地址:https://github.com/jetseven/skpsmtpmessage

这个库比较老旧,使用MRC手动内存管理(如下),当然也可以用pod直接导入,而且省事方便

引入头文件

#import "SKPSMTPMessage.h"

#import "NSData+Base64Additions.h"

遵循代理  SKPSMTPMessageDelegate

//代码如下

-(void)sendEmail{

SKPSMTPMessage *testMsg = [[SKPSMTPMessagealloc] init];

//发送邮箱

testMsg.fromEmail =@"houcr@hi-service.cn";

//收件邮箱

testMsg.toEmail =@"houcr@hi-service.cn";

testMsg.relayHost =@"mail.hi-service.cn";

testMsg.requiresAuth =YES;

//发送邮箱

testMsg.login =@"houcr@hi-service.cn";

//发送邮箱密码

testMsg.pass =@"********";

testMsg.wantsSecure =YES;

testMsg.delegate =self;

//主题

testMsg.subject = [NSStringstringWithFormat:@"%@_%@",info.companyName,info.userNames];

//内容

NSDictionary *plainPart = [NSDictionary                                dictionaryWithObjectsAndKeys:@"text/plain",kSKPSMTPPartContentTypeKey,[NSStringstringWithCString:"测试正文"encoding:NSUTF8StringEncoding], kSKPSMTPPartMessageKey,@"8bit",kSKPSMTPPartContentTransferEncodingKey,nil];

NSDictionary *vcfPart = [NSDictionarydictionaryWithObjectsAndKeys:@"text/plain",kSKPSMTPPartContentTypeKey,[NSStringstringWithFormat:@"%@",contentStr],kSKPSMTPPartMessageKey,@"8bit",kSKPSMTPPartContentTransferEncodingKey,nil];

//添加附件图片

NSData *imgData =UIImagePNGRepresentation(_selectIcon);

NSDictionary *imagePart = [NSDictionarydictionaryWithObjectsAndKeys:@"image/png;\r\n\tx-unix-mode=0644;\r\n\tname=\"backIcon.png\"",kSKPSMTPPartContentTypeKey,                             @"attachment;\r\n\tfilename=\"backIcon.png\"",kSKPSMTPPartContentDispositionKey,[imgDataencodeBase64ForData],kSKPSMTPPartMessageKey,@"base64",kSKPSMTPPartContentTransferEncodingKey,nil];

testMsg.parts = [NSArrayarrayWithObjects:plainPart,vcfPart,imagePart,nil];

[testMsg send];

}

//代理方法

- (void)messageSent:(SKPSMTPMessage *)message

{

[AlertshowWithTitle:@"提交成功"];

[self.navigationControllerpopViewControllerAnimated:YES];

NSLog(@"%@", message);

}

- (void)messageFailed:(SKPSMTPMessage *)message error:(NSError *)error

{

[AlertshowWithTitle:@"提交失败"];

NSLog(@"message - %@\nerror - %@", message, error);

}

到此为止写完了,先不用激动,后边还有坑,当发送成功收到邮件时,一脸蒙蔽了,标题乱码了,经过一系列的编码尝试都不行,这时要修改库里的编码方式,先找到SKPSMTPMessage.m这个类,869行编码格式改为:NSUTF8StringEncoding

ios -静默方式发送邮件相关推荐

  1. java ios乱码_iOS发送邮件及其中文乱码解决方法

    引 要我说呀,你如果不曾碰到奇奇怪怪的需求都不好意思说你是个程序猿.最近我碰到了,所以才有这篇文章,记录一下过程中遇到的问题. 这篇文章是记录一下我是如何在iOS端实现自动发送邮件功能的.某个应用场景 ...

  2. Centos6.9安装Oracle11G(静默方式)

    #oracle版本:oracle-11.2.0 #下载oracle #创建安装文件存放目录 mkdir /data/oracle_install cd /data/oracle_install #下载 ...

  3. mailx(mail)配置outlook SMTP方式发送邮件

    0x01,环境介绍: 我们用的是微软的邮箱打算用SMTP方式发送邮件.先登录账户看官方给出SMTP信息. 0x02,系统mailx(mail)设置. 通过命令可以看到,mail实际上是mailx的快捷 ...

  4. ios程序内发送邮件的代码

    如下内容是关于ios程序内发送邮件的内容. iPhone API已经提供了系统写邮件界面的接口,使用MFMailComposeViewController,用来显示界面. 项目中需要添加Message ...

  5. 如何删除oracle软件,如何用静默方式删除oracle软件

    本文主要介绍在linux下如何用静默方式卸载oracle软件. 在linux下卸载oracle软件比较简单,可以简单的把相关目录删除掉,然后清理一下/etc下oracle相关的文件就可以. 但还是有必 ...

  6. 【DBCA -SILENT】静默方式安装11gR2 oracle数据库软件

    [DBCA -SILENT]静默方式安装11gR2数据库软件单实例 BLOG文档结构图 相关文章链接: DBCA静默方式建库 :http://blog.itpub.net/26736162/views ...

  7. bluehost主机php语句,BlueHost主机如何用PHP以SMTP方式发送邮件

    目前使用一些脚本发送邮件的方式有许多,但并不是所有人都会使用,所以小编下面就,BlueHost主机如何用PHP以SMTP方式发送邮件的方式为大家进行介绍. 具体操作方法如下: 首先在系统中添加了一个邮 ...

  8. oracle 静默创建库,静默方式创建Oracle数据库

    我前面弄了个<< 通过SHELL脚本快速安装Oracle11gR2软件>>用来快速安装Oracle软件,然后在通过本篇的方式来以静默方式创建Oracle数据库, 能更方便的创建 ...

  9. C# 多种方式发送邮件(附帮助类)

    因项目业务需要,需要做一个发送邮件功能,查了下资料,整了整,汇总如下,亲测可用- QQ邮箱发送邮件 #region 发送邮箱try{MailMessage mail = new MailMessage ...

最新文章

  1. JDBC连接Oracle数据库测试
  2. ElasticSearch聚合分析API——非常详细,如果要全面了解的话,最好看这个
  3. blob照片显示 oracle_保存图片到oracle的blob字段,报ora-01465
  4. python diango_Django 安装
  5. EAI的Spring集成教程
  6. float在python_如何在python中读取.float文件? - python
  7. java线程同步的作用_Java并发编程之线程同步
  8. 2000元以内办公用计算机,2000元以内买什么笔记本 便宜实用笔记本【推荐】
  9. 火狐浏览器找不到书签了
  10. prod和probor在matlab,智能控制讲义第六章Matlab在模糊控制中的应用.
  11. [置顶] 可惜了,没有人可以代替你自己的思考
  12. 合肥工业大学机器人技术五十六题
  13. 2021-06-07 QQ注册
  14. 【JAVA Reference】Finalizer 剖析 (六)
  15. Nature重磅:软硬分离、图灵完备,清华首次提出“类脑计算完备性”
  16. 使用C32asm编辑
  17. 【leetcode Database】175.Combine Two Tables
  18. The Pilots Brothers' refrigerator DFS+枚举
  19. 基于 Matlab/simulink的锂电池建模与仿真——复现论文《基于二阶EKF的锂离子电池SOC估计的建模与仿真》的仿真部分
  20. git操作提示please tell me who you are问题

热门文章

  1. Loadrunner之关联——用小故事理解
  2. WEEX for VUE前端工程师-姜威-专题视频课程
  3. 微信android 7.0版本下载地址,微信7.0官方版本下载,微信7.0官方版本下载 v7.0.15-安卓乐园安卓软件网...
  4. 11-stream流-流水线编码、filter等中间方法、forEach等终止方法、collect获取返回结果方法、lambda练习
  5. kali ifconfig没有wlan0的解决方法
  6. java 日期 第几周-java 获取给定日期属于当年第几周
  7. Python基础一(介绍)
  8. 如何将弹幕嵌入视频中,合成一个文件
  9. 一曲《千秋令》,唱不尽千古风华
  10. 每月分享之兰迪·波许教授的最后一课