引
在應(yīng)用程序內(nèi),調(diào)用系統(tǒng)的功能來實(shí)現(xiàn)打電話颁湖、發(fā)短信和發(fā)郵件宣蠕,通過電話號(hào)碼或者郵箱,直接跳轉(zhuǎn)到系統(tǒng)的功能界面爷狈。
PS:調(diào)試好像只能真機(jī)調(diào)試植影,模擬器沒有反應(yīng)裳擎,真機(jī)就可以跳轉(zhuǎn)涎永,不知道是不是必須真機(jī),但方法肯定是可行的鹿响。
1羡微、打電話
應(yīng)用內(nèi)調(diào)用系統(tǒng)打電話有兩種方式:
1)WebView方式
使用WebView來跳轉(zhuǎn),把電話號(hào)碼通過URL傳遞給WebView惶我,這種方式會(huì)彈出是否要撥打的提示妈倔,可以選擇撥打或者不撥打,打完也會(huì)自動(dòng)回到應(yīng)用界面绸贡,推薦盯蝴。
UIWebView *callWebview =[[UIWebView alloc] init];
NSURL *telURL =[NSURL URLWithString:[NSString stringWithFormat:@"tel:%@",self.phoneNumber.text]];
[callWebview loadRequest:[NSURLRequest requestWithURL:telURL]];
[self.view addSubview:callWebview];
在URL中加入“tel:”開頭,后接電話號(hào)碼听怕,系統(tǒng)就會(huì)識(shí)別為調(diào)用撥號(hào)器了捧挺。
2)UIApplication方式
使用UIApplication來跳轉(zhuǎn),同樣傳遞和上一種方式同樣的URL尿瞭,這種方式不會(huì)彈出提示問你確認(rèn)撥打與否闽烙,而是直接撥打,打完也會(huì)停在通訊錄那声搁,不會(huì)回到應(yīng)用黑竞,不推薦。
NSURL *telURL =[NSURL URLWithString:[NSString stringWithFormat:@"tel:%@",self.phoneNumber.text]];
[[UIApplication sharedApplication] openURL:telURL];
2疏旨、發(fā)短信
應(yīng)用內(nèi)調(diào)用系統(tǒng)發(fā)短信也有兩種方式很魂,與打電話是一樣的,唯一的不同是URL中要以“sms:”開頭檐涝,這樣就可以告訴系統(tǒng)要調(diào)用的是發(fā)短信功能:
1)WebView方式
使用WebView來跳轉(zhuǎn)遏匆,把電話號(hào)碼通過URL傳遞給WebView霞玄,這種方式會(huì)跳到短信界面發(fā)送,推薦拉岁。
UIWebView *smsWebview =[[UIWebView alloc] init];
NSURL *telURL =[NSURL URLWithString:[NSString stringWithFormat:@"sms:%@",self.phoneNumber.text]];
[smsWebview loadRequest:[NSURLRequest requestWithURL:telURL]];
[self.view addSubview:smsWebview];
2)UIApplication方式
使用UIApplication來跳轉(zhuǎn)坷剧,這種方式會(huì)在后臺(tái)直接發(fā)送,不推薦喊暖。
NSURL *telURL =[NSURL URLWithString:[NSString stringWithFormat:@"sms:%@",self.phoneNumber.text]];
[[UIApplication sharedApplication] openURL:telURL];
3惫企、發(fā)郵件
發(fā)郵件還是一樣使用WebView的方式,與打電話陵叽、發(fā)短信都是一樣的狞尔,要改的也是URL中要以“mailto:”開頭,后接郵箱地址:
UIWebView *emailWebview =[[UIWebView alloc] init];
NSURL *emailURL =[NSURL URLWithString:[NSString stringWithFormat:@"mailto:%@",self.email.text]];
[emailWebview loadRequest:[NSURLRequest requestWithURL:emailURL]];
[self.view addSubview:emailWebview];
這樣會(huì)跳轉(zhuǎn)到系統(tǒng)自帶的郵箱應(yīng)用去巩掺。
在使用這些功能時(shí)偏序,應(yīng)該注意正則表達(dá)式檢測(cè)手機(jī)號(hào)碼、郵箱的格式等胖替。
在這里可以下載我的示例工程:https://github.com/Cloudox/TelTest