其实发送短信其实有两个方法
方法一:
UIApplication中openURL的方法
如下:
UIApplication *app = [UIApplication sharedApplication];
[app openURL:[NSURL URLWithString:@"sms://13007310000"]];
这个方法,并不是很高级,因为只能写好联系人,下面提供一个方法,可以直接编辑好内容还有收信人的!
方法二:
第一步
首先导入框架MessageUI.framework
第二步
导入头文件#import <MessageUI/MessageUI.h>
第三步
签订协议 <MFMessageComposeViewControllerDelegate>
并实现协议方法
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result {
NSLog(@"%s",__func__);
switch (result) {
case MessageComposeResultSent:
NSLog(@"MessageComposeResultSent");
break;
case MessageComposeResultFailed:
NSLog(@"MessageComposeResultFailed");
break;
case MessageComposeResultCancelled:
NSLog(@"MessageComposeResultCancelled");
break;
default:
break;
}
[controller dismissViewControllerAnimated:YES completion:nil];
}
第四步
判断设备是否支持发送短信,支持的话在跳入到短信界面,编辑好短信的内容和收信人;不支持的话,则会有个弹框提示!
UIViewController * VC;
if ([MFMessageComposeViewController canSendText]) {
MFMessageComposeViewController* composeVC = [[SMSViewController alloc] init];
composeVC.messageComposeDelegate = self;
composeVC.recipients = @[@"13007310000"];
composeVC.body = @"Hello from California!";
VC = composeVC;
}else{
UIAlertController * alertVC = [UIAlertController alertControllerWithTitle:@"温馨提示" message:@"您的设备不支持短信功能" preferredStyle:UIAlertControllerStyleAlert];
VC = alertVC;
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[alertVC dismissViewControllerAnimated:YES completion:nil];
});
}
[self presentViewController:VC animated:YES completion:nil];
不过本人求一个方法,可以直接把短信给发送出去了的,为这个方法只能编辑好,最后还是要用户自己点击一下发送按钮,有不有什么方法可以直接发送出去了呢!希望各位赐教留言!!