iOS中調用系統撥打電話與發送短信
IOS中調用系統撥打電話發送短信
一、調用打電話界面
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel://%@",_phoneNumber]]];
二、發送短消息界面
調用系統的發送短信的界面,需要引入以下頭文件:
#import <MessageUI/MessageUI.h>
系統短信界面的調用很簡單,只需下面幾句代碼:
MFMessageComposeViewController * con = [[MFMessageComposeViewController alloc]init]; if ([MFMessageComposeViewController canSendText]) { con.recipients=@[_phoneNumber];//電話數組 con.messageComposeDelegate=self; [self presentViewController:con animated:YES completion:nil];
下面將MessageUI的一些常用方法總結如下:
+ (BOOL)canSendText
判斷是否支持發送文字
+ (BOOL)canSendSubject;
判斷是否支持發送主題信息
+ (BOOL)canSendAttachments;
判斷是否支持發送附件
+ (BOOL)isSupportedAttachmentUTI:(NSString *)uti;
判斷是否支持統一標示附件
- (void)disableUserAttachments;
禁止發送附件
@property(nonatomic,copy) NSArray *recipients;
聯系人數組,會顯示在發送人列表里
@property(nonatomic,copy) NSString *body;
信息主體內容
@property(nonatomic,copy) NSString *subject;
信息標題
@property(nonatomic,copy, readonly) NSArray *attachments;
信息附件數組 只讀的 里面是字典
- (BOOL)addAttachmentURL:(NSURL *)attachmentURL withAlternateFilename:(NSString *)alternateFilename;
根據URL路徑和添加附件,返回YES表示添加成功
- (BOOL)addAttachmentData:(NSData *)attachmentData typeIdentifier:(NSString *)uti filename:(NSString *)filename;
根據Data數據添加附件
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result;
MFMessageComposeViewControllerDelegate的代理方法,result會傳回來一個結果,枚舉如下:
enum MessageComposeResult { //取消發送 MessageComposeResultCancelled, //發送成功 MessageComposeResultSent, //發送失敗 MessageComposeResultFailed };