iOS 用openurl 方式打开
在iOS开发中,经常需要调用其它App,如拨打电话、发送邮件等。UIApplication:openURL:方法是实现这一目的的最简单方法,该方法一般通过提供的url参数的模式来调用不同的App。
通过openURL方法可以调用如下应用:
- 调用谷歌地图(Google Maps)
- 调用邮件客户端(Apple Mail)
- 拨号(Phone Number)
- 调用短信(SMS)
- 调用浏览器(Safari Browser)
- 调用应用商店(AppStore)
调用谷歌地图(Google Maps)
代码示例:
searchQuery = [addressText stringByAddingPercentEscapesUsingEncoding : NSUTF8StringEncoding ];
NSString * urlString = [ NSString stringWithFormat : @ "http://maps.google.com/maps?q=%@", searchQuery ];
[ [UIApplication sharedApplication ] openURL : [ NSURL URLWithString :urlText ] ];
调用邮件客户端(Apple Mail)
代码示例:
拨号(Phone Number)
代码示例:
调用短信(SMS)
代码示例:
调用浏览器(Safari Browser)
代码示例:
调用应用商店(AppStore)
代码示例:
[ [ UIApplication sharedApplication ] openURL : appStoreUrl ] ;
调用appstore中程序的评论
很多用户用了好软件后忘记或嫌麻烦而不去 App Store 进行打分评星,为此开发者可以在应用中加入打分按钮,点击后直接跳转到 App Store 的评分界面。
App Store 上评论的链接地址是 itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=appID
所以可以用这段代码
NSString *str = [NSString stringWithFormat:
@"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=%d",
m_appleID ];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]];
eg. bundleID = com.test.abc
URL Schemes = abc
NSURL *url = [NSURL URLWithString:@"abc://"];
[[UIApplication sharedApplication] openURL:url];