1、調用 iOS系統自帶mail
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://[email protected]"]];
2、調用 打電話phone
<1>一般在應用中撥打電話的方式是 iphone界面會停留在電話界面 :
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://159*****334"]];
<2>用如下方式,可以使得用戶結束通話後自動返回到應用:
UIWebView*callWebview =[[UIWebView alloc] init]; NSURL *telURL =[NSURL URLWithString:@"tel://159*****334"];// 貌似tel:// 或者 tel: 都行 [callWebview loadRequest:[NSURLRequest requestWithURL:telURL]]; [self.view addSubview:callWebview];
<3>還有一種私有方法:(可能不能通過審核)
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"telprompt://10086"]];
3、調用SMS
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://800888"]];
PS:
調用phone可以傳遞號碼,調用SMS 只能設定號碼,不能初始化SMS內容。
若需要傳遞內容可以做如下操作:
加入:MessageUI.framework
#import <MessageUI/MFMessageComposeViewController.h>
實現代理:MFMessageComposeViewControllerDelegate
調用sendSMS函數
//內容,收件人列表
- (void)sendSMS:(NSString *)bodyOfMessage recipientList:(NSArray *)recipients { MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease]; if([MFMessageComposeViewController canSendText]) { controller.body = bodyOfMessage; controller.recipients = recipients; controller.messageComposeDelegate = self; [self presentModalViewController:controller animated:YES]; } }
// 處理發送完的響應結果 - (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result { [self dismissModalViewControllerAnimated:YES]; if (result == MessageComposeResultCancelled) NSLog(@"Message cancelled") else if (result == MessageComposeResultSent) NSLog(@"Message sent") else NSLog(@"Message failed") }
默認發送短信的界面為英文的,解決辦法為:
在.xib 中的Localization添加一組Chinese就ok了
4、4、調用 iOS系統自帶浏覽器safari
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.baidu.com"]];