且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

iOS:实现邮件和短信发送的简单示例

更新时间:2022-09-22 12:04:10

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

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

iOS:实现邮件和短信发送的简单示例
- (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(@"此设备不支持");  
    }  
  
} 
iOS:实现邮件和短信发送的简单示例

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

iOS:实现邮件和短信发送的简单示例
//  调用系统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(@"失败");  
    }  
  
} 
iOS:实现邮件和短信发送的简单示例

 

程序猿神奇的手,每时每刻,这双手都在改变着世界的交互方式!
本文转自当天真遇到现实博客园博客,原文链接:http://www.cnblogs.com/XYQ-208910/p/5127992.html,如需转载请自行联系原作者