1.iOS 发送短信功能
iOS常见的发送短信方式有openURL
和MessageUI
两种方式,第一种比较过时,需要跳转到短信App进行发送,第二种允许在App进行发送短信,并且能够取到短信发送状态
1.openURL方式
UIApplication.shared.open(URL(string: "sms://\(number)")!, options: [:], completionHandler: nil)
2.MessageUI 方式
使用这个方式需要导入MessageUI
框架
if MFMessageComposeViewController.canSendText() {
let vc = MFMessageComposeViewController()
vc.recipients = [number] // 支持多个手机号
vc.body = "今天晚上有空么,一起吃个饭" // 支持文字直接进入文本框
vc.messageComposeDelegate = self
self.present(vc, animated: true, completion: nil)
}
2.1 MFMessageComposeViewControllerDelegate
/// 发送短信回调
func messageComposeViewController(_ controller: MFMessageComposeViewController, didFinishWith result: MessageComposeResult) {
controller.dismiss(animated: true, completion: nil);
switch result {
case .cancelled:
print("短信发送 -- 取消")
case .sent:
print("短信发送 -- 成功")
case .failed:
print("短信发送-- 失败")
default:
break
}
}