iOS开发中使用[[UIApplication sharedApplication] openURL:]加载其它应用
在iOS开发中,经常需要调用其它App,如拨打电话、发送邮件等。UIApplication:openURL:方法是实现这一目的的最简单方法,该方法一般通过提供的url参数的模式来调用不同的App。
通过openURL方法可以调用如下应用:
- 调用谷歌地图(Google Maps)
- 调用邮件客户端(Apple Mail)
- 拨号(Phone Number)
- 调用短信(SMS)
- 调用浏览器(Safari Browser)
- 调用应用商店(AppStore)
调用谷歌地图(Google Maps)
URL模式:http : //maps.google.com/maps?q=<strong>${QUERY_STRING}</strong>
代码示例:
NSString * searchQuery = @ "1 Infinite Loop, Cupertino, CA 95014";
searchQuery = [addressText stringByAddingPercentEscapesUsingEncoding : NSUTF8StringEncoding ];
NSString * urlString = [ NSString stringWithFormat : @ "http://maps.google.com/maps?q=%@", searchQuery ];
[ [UIApplication sharedApplication ] openURL : [ NSURL URLWithString :urlText ] ];
调用邮件客户端(Apple Mail)
URL模式:mailto : //<strong>${EMAIL_ADDRESS}</strong>
代码示例:
[ [UIApplication sharedApplication ] openURL : [ NSURL URLWithString : @ "mailto://[email protected]" ] ];
拨号(Phone Number)
URL模式:tel : //<strong>${PHONE_NUMBER}</strong>
代码示例:
[ [UIApplication sharedApplication ] openURL : [ NSURL URLWithString : @ "tel://10086" ] ];
调用短信(SMS)
URL模式:sms :<strong>$ {PHONENUMBER_OR_SHORTCODE }< /strong>
代码示例:
[ [UIApplication sharedApplication ] openURL : [ NSURL URLWithString : @ "sms:10086" ] ];
调用浏览器(Safari Browser)
代码示例:
NSURL *url = [ NSURL URLWithString : @ "http://eyecm.com" ];
[ [UIApplication sharedApplication ] openURL :url ];
调用应用商店(AppStore)
URL模式:http : //phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=291586600&mt=8
代码示例:
NSURL *appStoreUrl = [ NSURL URLWithString : @ "http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=291586600&amp;mt=8" ];
[ [UIApplication sharedApplication ] openURL :appStoreUrl ];