本地调用短信分享。

 #import "shareViewController.h"

 @interface shareViewController (){
UIAlertView *mfAlertview;//定义一个弹出框
UITextView* txYaoqingma;
} @end @implementation shareViewController - (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
} - (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
} - (IBAction)shareButClick:(id)sender { [self showMessageViewController];
} -(void)showMessageViewController
{
if( [MFMessageComposeViewController canSendText] )//判断是否能发短息
{ MFMessageComposeViewController * controller = [[MFMessageComposeViewController alloc]init];
controller.recipients = [NSArray arrayWithObject:@""];//接收人,可以有很多,放入数组
controller.body = txYaoqingma.text;//短信内容,自定义即可
controller.messageComposeDelegate = self;//注意不是delegate [self presentViewController:controller animated:YES completion:nil]; [[[[controller viewControllers] lastObject] navigationItem] setTitle:@"发送短信"];//修改短信界面标题
}
else
{ UIAlertView *alert=[[UIAlertView alloc]initWithTitle:@"抱歉" message:@"短信功能不可用!" delegate:self cancelButtonTitle:@"好" otherButtonTitles:nil, nil];
[alert show];
}
} //短信发送成功后的回调
-(void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
[controller dismissViewControllerAnimated:YES completion:nil]; switch (result)
{
case MessageComposeResultCancelled:
{
//用户取消发送
}
break;
case MessageComposeResultFailed://发送短信失败
{
mfAlertview=[[UIAlertView alloc]initWithTitle:@"抱歉" message:@"短信发送失败" delegate:nil cancelButtonTitle:@"好" otherButtonTitles:nil, nil]; [mfAlertview show]; }
break;
case MessageComposeResultSent:
{
mfAlertview=[[UIAlertView alloc]initWithTitle:@"恭喜" message:@"短信发送成功!" delegate:nil cancelButtonTitle:@"好" otherButtonTitles:nil, nil]; [mfAlertview show]; }
break;
default:
break;
}
}

添加邮件分享

 //邮件

 -(void)showMailPicker {

     Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));

     if (mailClass !=nil) {

         if ([mailClass canSendMail]) {

             [self displayMailComposerSheet];

         }else{

             UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@""message:@"设备不支持邮件功能" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil];

             [alert show];

         }

     }else{

     }

 }

 -(void)displayMailComposerSheet

 {

     MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];

     picker.mailComposeDelegate =self;

     [picker setSubject:@"文件分享"];

     // Set up recipients

     NSArray *toRecipients = [NSArray arrayWithObject:@"first@qq.com"];

     NSArray *ccRecipients = [NSArray arrayWithObjects:@"second@qq.com",@"third@qq.com", nil];

     NSArray *bccRecipients = [NSArray arrayWithObject:@"fourth@qq.com"];

     [picker setToRecipients:toRecipients];

     [picker setCcRecipients:ccRecipients];

     [picker setBccRecipients:bccRecipients];

     //发送图片附件

     //NSString *path = [[NSBundle mainBundle] pathForResource:@"rainy" ofType:@"jpg"];

     //NSData *myData = [NSData dataWithContentsOfFile:path];

     //[picker addAttachmentData:myData mimeType:@"image/jpeg" fileName:@"rainy.jpg"];

     //发送txt文本附件

     //NSString *path = [[NSBundle mainBundle] pathForResource:@"MyText" ofType:@"txt"];

     //NSData *myData = [NSData dataWithContentsOfFile:path];

     //[picker addAttachmentData:myData mimeType:@"text/txt" fileName:@"MyText.txt"];

     //发送doc文本附件

     //NSString *path = [[NSBundle mainBundle] pathForResource:@"MyText" ofType:@"doc"];

     //NSData *myData = [NSData dataWithContentsOfFile:path];

     //[picker addAttachmentData:myData mimeType:@"text/doc" fileName:@"MyText.doc"];

     //发送pdf文档附件

     /*

      NSString *path = [[NSBundlemainBundle] pathForResource:@"CodeSigningGuide"ofType:@"pdf"];

      NSData *myData = [NSDatadataWithContentsOfFile:path];

      [pickeraddAttachmentData:myData mimeType:@"file/pdf"fileName:@"rainy.pdf"];

      */

     // Fill out the email body text

     NSString *emailBody =[NSString stringWithFormat:@"我分享了文件给您,地址是%@",@"address"] ;

     [picker setMessageBody:emailBody isHTML:NO];

     [self presentModalViewController:picker animated:YES];

 }

 - (void)mailComposeController:(MFMailComposeViewController*)controller

           didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error {

     // Notifies users about errors associated with the interface

     switch (result)

     {

         caseMFMailComposeResultCancelled:

             NSLog(@"Result: Mail sending canceled");

             break;

         caseMFMailComposeResultSaved:

             NSLog(@"Result: Mail saved");

             break;

         caseMFMailComposeResultSent:

             NSLog(@"Result: Mail sent");

             break;

         caseMFMailComposeResultFailed:

             NSLog(@"Result: Mail sending failed");

             break;

         default:

             NSLog(@"Result: Mail not sent");

             break;

     }

     [self dismissModalViewControllerAnimated:YES];

 }

iOS 短信分享 邮件分享的更多相关文章

  1. iOS调用系统发送短信和邮件分享

    //发送邮件 -(void)sendMail:(NSString*)subject content:(NSString*)content{ MFMailComposeViewController*co ...

  2. IOS中调用系统的电话、短信、邮件、浏览功能

    iOS开发系列--通讯录.蓝牙.内购.GameCenter.iCloud.Passbook系统服务开发汇总 2015-01-13 09:16 by KenshinCui, 26990 阅读, 35 评 ...

  3. ios 设置亮度、声音;调用发短信、邮件、打电话

    一,设置亮度 [[UIScreen mainScreen] setBrightness:0.5];//0.0~1.0 二,设置声音 1,添加 MediaPlayer.framework 框架 2,在需 ...

  4. iOS学习笔记28-系统服务(一)短信和邮件

    一.系统应用 在开发某些应用时,我们可能希望能够调用iOS系统内置的电话.短信.邮件.浏览器应用,或者直接调用安装的第三方应用,这个要怎么实现呢? 这里统一使用UIApplication的一个对象方法 ...

  5. ios开发——实用技术篇Swift篇&地址薄、短信、邮件

    //返回按钮事件 @IBAction func backButtonClick() { self.navigationController?.popViewControllerAnimated(tru ...

  6. 整理:iOS 短信与电话事件的获取

    整理:iOS 短信与电话事件的获取   background information: Core Telephony iOS 4.0 的官方 API 裡頭,多了一個叫做 Core Telephony  ...

  7. react-native-communications 电话、短信、邮件、浏览器

    第一种方法:Linking:调用系统的电话.短信.邮件.浏览器等功能 Linking.canOpenURL(this.props.url).then(supported => { if (!su ...

  8. HTML5的头部、拨号、短信、邮件(转)

    HTML5[语法要点] 一.头部设置 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 <!--页面窗口自动调整到设备 ...

  9. MVC使用ASP.NET Identity 2.0实现用户身份安全相关功能,比如通过短信或邮件发送安全码,账户锁定等

    本文体验在MVC中使用ASP.NET Identity 2.0,体验与用户身份安全有关的功能: →install-package Microsoft.AspNet.Identity.Samples - ...

  10. Android实例-打电话、发短信和邮件,取得手机IMEI号(XE8+小米2)

    结果: 1.不提示发短信卡住,点击没有反映,我猜想,可能是因为我用的是小米手机吧. 2.接收短信报错,我猜想可能是我改了里面的方法吧(哪位大神了解,求指教). 3.project -->opti ...

随机推荐

  1. Javascript高级程序设计——在HTML中使用Javascript

    <script>元素 向HTML页面中插入Javascript的主要方法,就是使用<script>元素,<script>元素有六个属性: async:可选.表示应该 ...

  2. Redhat EL安装curses

    1.下载curses安装包 http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.6.tar.gz2. tar -zxvf  nurses-5.6.tar.gz 3 ...

  3. mongodb的sql例子(简单版)

    插入数据 db.person.insert({"name":"zfx","age":21}) 查找所有数据 db.person.find() ...

  4. 深入理解Java虚拟机之读书笔记二 垃圾收集器

    1.对象已死? a.引用计数算法:缺点是它很难解决对象之间的相互循环引用的问题,Java语言中没有选用它. b.根搜索算法(GC Roots Tracing):通过一系列的名为"GC Roo ...

  5. Unix操作系统中UUCP知识详细讲解

    导读 Unix操作系统有很多值得学习的地方,这里我们主要介绍Unix操作系统中的uucp,大家一起来学习下吧!UUCP系统是一组程序,完成文件传输,执行系统之间的命令,维护系统使用情况的统计,保护安全 ...

  6. 怎样删除一键GHOST 文件件名为~1的备份文件?

    早些时候备份过系统,但是后来觉的该备份系统不够完美,想删除.可是备份文件被保护,无法删除.(1)在网上查看了一下: start X:\~1 attrib -s -h -r X:\~1\C_PAN.GH ...

  7. am335x UART1输入u-boot 调试信息代码修改

    AM335x 调试信息UART1输出代码修改1. 关于pin_mux  的配置代码修改位置:/board/forlinx/ok335x/mux.c void enable_uart0_pin_mux( ...

  8. java.lang.NoClassDefFoundError: [Lorg/hibernate/engine/FilterDefinition

    解决办法: 原先:<bean id="sessionFactory"class="org.springframework.orm.hibernate3.annota ...

  9. phpcmsV9.5.8整合百度编辑器Ueditor1.4.3教程

    最近在搞phpcms视频功能,官方的视频功能实在是坑,刚开始是想将优酷的上传功能集成到ckeditor,在coding上有个项目,上传已经集成好了,还没有做上传后视频的获取和显示 项目地址:https ...

  10. ganglia及ganglia-api相关介绍

    1, ganglia的安装: http://blog.topspeedsnail.com/archives/3049 2, ganglia-api项目地址 https://github.com/gua ...