zoukankan      html  css  js  c++  java
  • 调用系统的短信和发送邮件功能,实现短信分享邮件分享

    导入MessageUI.framework

    .h文件中#import <MessageUI/MessageUI.h>

    #import<MessageUI/MFMailComposeViewController.h>

    实现 MFMailComposeViewControllerDelegate, 

    MFMessageComposeViewControllerDelegate

    .m 文件

    //邮件

    -(void)showMailPicker {

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

        

    if (mailClass !=nil) {

            if ([mailClass canSendMail]) {

    [selfdisplayMailComposerSheet];

    }else{

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

                [alert show];

                [alert release];

            }

        }else{

            

        }

        

    }

    -(void)displayMailComposerSheet 

    {

    MFMailComposeViewController *picker = [[MFMailComposeViewControlleralloc] init];

       

    picker.mailComposeDelegate =self;

    [pickersetSubject:@"文件分享"];

    // Set up recipients

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

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

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

        

    [pickersetToRecipients:toRecipients];

    [pickersetCcRecipients:ccRecipients];

    [pickersetBccRecipients: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 =[NSStringstringWithFormat:@"我分享了文件给您,地址是%@",address] ;

    [pickersetMessageBody:emailBody isHTML:NO];

    [selfpresentModalViewController:picker animated:YES];

    [pickerrelease];

    }

    - (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;

    }

    [selfdismissModalViewControllerAnimated:YES];

    }

    //短信

    -(void)showSMSPicker{

       Class messageClass = (NSClassFromString(@"MFMessageComposeViewController"));

        if (messageClass != nil) { 

       // Check whether the current device is configured for sending SMS messages

            if ([messageClass canSendText]) {

            [selfdisplaySMSComposerSheet];

            }

            else {

                UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@""message:@"设备不支持短信功能" delegate:selfcancelButtonTitle:@"确定"otherButtonTitles:nil];

                [alert show];

                [alert release];

                

            }

        }

        else {

            }

     }

    -(void)displaySMSComposerSheet

    {

       MFMessageComposeViewController *picker = [[MFMessageComposeViewControlleralloc] init];

    picker.messageComposeDelegate =self;

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

        picker.body=smsBody;

    [selfpresentModalViewController:picker animated:YES];

    [pickerrelease];

    }

  • 相关阅读:
    InstallShield高级应用获取机机所有ORACLE服务列表
    InstallShield高级应用测试ORACL是否可连接
    [分享]Asp.net 页面加载顺序及常用页面事件规律
    InstallShield高级应用检查是否安装ORACLE或SQL Server
    InstallShield高级应用打开文件对话框
    InstallShield高级应用检测系统ServerPack版本,SP2前不支持则 abort
    InstallShield高级应用文件操作
    InstallShield高级应用系列目录
    c# 常用区别总结
    InstallShield高级应用测试Access是否可连接
  • 原文地址:https://www.cnblogs.com/xiaoyuaixiami/p/5217641.html
Copyright © 2011-2022 走看看