[转]iPhone发邮件编程
转自http://blog.csdn.net/koupoo/article/details/6455289
添加MessageUI. framework#import <MessageUI/MessageUI.h>MFMailComposeViewControllerDelegate
代码如下:
#pragma mark -
#pragma mark MFMailComposeViewController
- (void) alertWithTitle:(NSString *)_title_ msg:(NSString *)msg {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:_title_
message:msg
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alert show];
[alert release];
}
-(void)displayComposerSheet {
MFMailComposeViewController *mailPicker = [[MFMailComposeViewController alloc] init];
mailPicker.mailComposeDelegate = self;
[mailPicker setSubject:@"eMail主题"];
// 添加发送者
NSArray *toRecipients = [NSArray arrayWithObject:@"first@example.com"];
//NSArray *ccRecipients = [NSArray arrayWithObjects:@"second@example.com", @"third@example.com", nil];
//NSArray *bccRecipients = [NSArray arrayWithObject:@"fourth@example.com", nil];
[mailPicker setToRecipients:toRecipients];
//[picker setCcRecipients:ccRecipients];
//[picker setBccRecipients:bccRecipients];
// 添加图片
UIImage *addPic = [UIImage imageNamed:@"Icon.png"];
NSData *imageData = UIImagePNGRepresentation(addPic); // png
// NSData *imageData = UIImageJPEGRepresentation(addPic, 1); // jpeg
[mailPicker addAttachmentData:imageData mimeType:@"" fileName:@"Icon.png"];
NSString *emailBody = @"eMail 正文";
[mailPicker setMessageBody:emailBody isHTML:YES];
[self presentModalViewController:mailPicker animated:YES];
[mailPicker release];
}
-(void)launchMailAppOnDevice {
NSString *recipients = @"mailto:first@example.com&subject=my email!";
//@"mailto:first@example.com?cc=second@example.com,third@example.com&subject=my email!";
NSString *body = @"&body=email body!";
NSString *email = [NSString stringWithFormat:@"%@%@", recipients, body];
email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:email]];
}
-(void)sendEMail {
Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));
if (mailClass != nil) {
if ([mailClass canSendMail]) {
[self displayComposerSheet];
} else {
[self launchMailAppOnDevice];
}
} else {
[self launchMailAppOnDevice];
}
}
- (void)mailComposeController:(MFMailComposeViewController *)controller
didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error {
NSString *msg;
switch (result) {
case MFMailComposeResultCancelled:
msg = @"邮件发送取消";
break;
case MFMailComposeResultSaved:
msg = @"邮件保存成功";
[self alertWithTitle:nil msg:msg];
break;
case MFMailComposeResultSent:
msg = @"邮件发送成功";
[self alertWithTitle:nil msg:msg];
break;
case MFMailComposeResultFailed:
msg = @"邮件发送失败";
[self alertWithTitle:nil msg:msg];
break;
default:
break;
}
NSLog(@"发送结果:%@", msg);
[self dismissModalViewControllerAnimated:YES];
}
[转]iPhone发邮件编程相关推荐
- iPhone发邮件编程
源自:http://www.cocoachina.com/bbs/simple/?t59626.html 需要使用系统发邮件,就找到了许多例子,最后自己整理.处理后的代码,希望可以帮到其他人 类似例子 ...
- 怎么去掉手机端iPhone发邮件自带的小尾巴(签名),安卓APP同理
怎么去掉手机端iPhone发邮件自带的小尾巴(签名),安卓APP同理 背景 用iPhone的QQ邮箱APP回复邮件(或发送时),邮件的左下角会添加一个小尾巴 "发自我iPhone" ...
- crossin的编程教室python入门_简单三步,用 Python 发邮件
0. 前言 发送电子邮件是个很常见的开发需求.比如你写了个监控天气的脚本,发现第二天要下雨,或者网站上关注的某个商品降价了,就可以发个邮件到邮箱来提醒自己. 使用 Python 脚本发送邮件并不复杂. ...
- SMTP协议初探(二)----linux下c编程实现发邮件
仿照,SMTP协议初探(一)--我的前一篇博客,结合网上的材料,利用socket,写了个Linux下c编程实现的发邮件程序. 大家可以拿自己的邮箱去做实验啦,base64是一种编码方式,网上可以找到一 ...
- 使用matlab编程给qq或163邮箱等发邮件
平时在科研中经常会被导师要求使用matlab跑一些大程序,许多时候一个结果跑下来得花去好几个小时的时间,然后改改参数再继续跑,这样真的很让人不淡定啊,如果使用matlab编程让matlab跑出的让自己 ...
- 风火编程--python发邮件email
发邮件 import smtplib from email.mime.text import MIMEText from email.utils import formataddr# 发件人邮箱账号 ...
- utf—8在苹果手机上乱码_【研究】解决iPhone中文邮件乱码的四种方法
转载自FTidea.com 众所周知,由于iPhone目前在MobileMail中尚不支持除UTF-8之外的其它编码,而大部分国内中文邮件采用GB2312编码,造成中文邮件大多在iPhone上显示乱码 ...
- 自动发邮件的程序 c语言,5分钟!教你用C语言发送邮件:附送源码+教学!
5分钟!教你用C语言发送邮件:附送源码+教学!-1.jpg (10.71 KB, 下载次数: 0) 2018-9-3 02:21 上传 关注<一碳科技>,获取更多知识! 前言 相信年夜家都 ...
- 简单三步,用 Python 发邮件
2019独角兽企业重金招聘Python工程师标准>>> 0. 前言 发送电子邮件是个很常见的开发需求.比如你写了个监控天气的脚本,发现第二天要下雨,或者网站上关注的某个商品降价了,就 ...
最新文章
- python建模仿真报告_Python|数学建模|排队论仿真
- Python之Pandas:利用pandas实现行数据添加,即将字典格式的数据,按照行数据,从头开始循环添加到dataframe中
- java大公司后端多线程面试题最强分享
- Vue项目报错记录解决Property or method “item“ is not defined on the instance
- equals与hashcode的区别与联系
- https 443 怎么改成80_阿里云购买免费https证书并用nginx配置代理详解(2020年9月)...
- leetcode讲解--513. Find Bottom Left Tree Value
- C++中函数指针数组的使用
- 2018年全国卷Ⅰ卷理科数学图片版
- Eclipse 2021-6安装教程及其安装包
- 电机不动 米兔机器人_深度解密米兔积木机器人八大黑科技
- java 定时任务的实现_Java定时任务实现的几种方式
- Outlook的服务器设置中POP3协议,在outlook的服务器设置中POP3协议是指
- linux修改hostid
- 【转】一个女孩的上海5年
- Elang之ETS系列函数功能与用法详解
- 电子工程师的自我修养 - 深度理解三极管datasheet
- 无标注数据是鸡肋还是宝藏?阿里工程师这样用它​
- 评价类模型——模糊综合评价
- Python实现拓扑排序并绘图
热门文章
- 卡巴微软趋势科技等多款流行的反恶意软件产品被曝多个漏洞,可导致提权等后果...
- Smith Numbers POJ - 1142 (暴力+分治)
- 解决 mcrypt.h not found
- Perlin Noise
- 深入分析redis cluster 集群安装配置详解
- Oracle官方并发教程之不可变对象
- 细说嵌入式Linux文件系统的制作方法
- Python发送邮件(Email SMTP)
- Ngrok让你的本地Web应用暴露在公网上
- [Java] 蓝桥杯BASIC-21 基础练习 Sine之舞