zoukankan      html  css  js  c++  java
  • iOS:实现邮件和短信发送的简单示例

    发送邮件
    1.导入库文件:MessageUI.framework

    2.引入头文件
    3.实现代理<MFMailComposeViewControllerDelegate> 和 <UINavigationControllerDelegate>
    代码示例:

    - (void)didClickSendEmailButtonAction{  
      
        if ([MFMailComposeViewController canSendMail] == YES) {  
              
            MFMailComposeViewController *mailVC = [[MFMailComposeViewController alloc] init];  
            //  设置代理(与以往代理不同,不是"delegate",千万不能忘记呀,代理有3步)  
            mailVC.mailComposeDelegate = self;  
            //  收件人  
            NSArray *sendToPerson = @[@"humingtao2014@gmail.com"];  
            [mailVC setToRecipients:sendToPerson];  
            //  抄送  
            NSArray *copyToPerson = @[@"humingtao2013@126.com"];  
            [mailVC setCcRecipients:copyToPerson];  
            //  密送  
            NSArray *secretToPerson = @[@"563821250@qq.com"];  
            [mailVC setBccRecipients:secretToPerson];  
            //  主题  
            [mailVC setSubject:@"hello world"];  
            [self presentViewController:mailVC animated:YES completion:nil];  
            [mailVC setMessageBody:@"魑魅魍魉,哈哈呵呵嘿嘿霍霍" isHTML:NO];  
        }else{  
          
            NSLog(@"此设备不支持邮件发送");  
          
        }  
      
    }  
      
    - (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error{  
      
        switch (result) {  
            case MFMailComposeResultCancelled:  
                NSLog(@"取消发送");  
                break;  
            case MFMailComposeResultFailed:  
                NSLog(@"发送失败");  
                break;  
            case MFMailComposeResultSaved:  
                NSLog(@"保存草稿文件");  
                break;  
            case MFMailComposeResultSent:  
                NSLog(@"发送成功");  
                break;  
            default:  
                break;  
        }  
          
        [self dismissViewControllerAnimated:YES completion:nil];  
    }  
      
    //  系统发送,模拟器不支持,要用真机测试  
    - (void)didClickSendSystemEmailButtonAction{  
      
        NSURL *url = [NSURL URLWithString:@"humingtao2014@gmail.com"];  
        if ([[UIApplication sharedApplication] canOpenURL:url] == YES) {  
              
            [[UIApplication sharedApplication] openURL:url];  
          
        }else{  
          
            NSLog(@"此设备不支持");  
        }  
      
    } 

    发送短信
    前面三步引入配置和邮件发送一样  

    //  调用系统API发送短信  
    - (void)didClickSendMessageButtonAction{  
          
        if ([MFMessageComposeViewController canSendText] == YES) {  
              
            MFMessageComposeViewController *messageVC = [[MFMessageComposeViewController alloc] init];  
            //  设置代理<MFMessageComposeViewControllerDelegate>  
            messageVC.messageComposeDelegate = self;  
            //  发送To Who  
            messageVC.recipients = @[@"18757289870"];  
            messageVC.body = @"hello world";  
            [self presentViewController:messageVC animated:YES completion:nil];  
              
        }else{  
          
            NSLog(@"此设备不支持");  
        }  
    }  
      
    - (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result{  
          
        switch (result) {  
            case MessageComposeResultCancelled:  
                NSLog(@"取消发送");  
                break;  
            case MessageComposeResultFailed:  
                NSLog(@"发送失败");  
                break;  
            case MessageComposeResultSent:  
                NSLog(@"发送成功");  
                break;  
            default:  
                break;  
        }  
          
        [self dismissViewControllerAnimated:YES completion:nil];  
      
    }  
      
    //  调用系统应用程序发送消息  
    - (void)didClickSendMessage2ButtonAction{  
          
        NSURL *url = [NSURL URLWithString:@"sms:18656348970"];  
        if ([[UIApplication sharedApplication] canOpenURL:url] == YES) {  
              
            [[UIApplication sharedApplication] openURL:url];  
              
        }else{  
          
            NSLog(@"失败");  
        }  
      
    } 
  • 相关阅读:
    【转】进程间通信方式总结(windows 和linux)
    Python-Analysis-Malware
    现场取证之流量分析总结
    木马通信与防护墙穿透
    【PE结构】恶意代码数字签名验证
    32位与64位架构上的区别
    【API】网络编程模型、多线程
    【API】遍历进程的几种方式
    【病毒取样】取证分析之逆向服务器提权开启3389远程连接工具
    【CTF WEB】XSS-https://alf.nu/alert1
  • 原文地址:https://www.cnblogs.com/XYQ-208910/p/5127992.html
Copyright © 2011-2022 走看看