美文网首页iOS
iOS开发中打开本地应用、打开appStore应用、给app评分

iOS开发中打开本地应用、打开appStore应用、给app评分

作者: 小新xin | 来源:发表于2017-07-17 11:37 被阅读164次

iOS开发中打开本地应用、打开appStore应用、给app评分功能实现

app开发中,通常会有邀请用户给app打分的功能。而在iOS中,正式应用都是通过appStore 下载的,因此给app 打分也只能在 appStore中。因此,需要从应用跳转到appStore。方法是打开响应的url 即可。代码如下:


NSString*appid = @"1234567";

NSString*str = [NSStringstringWithFormat:@"itms-apps://itunes.apple.com/cn/app/id%@?mt=8",appid ];

NSURL*url = [NSURLURLWithString:str];

[[UIApplication sharedApplication] openURL:url];

其中,appid 是应用发布时,苹果声称的一串数字,不需要自己设置,和项目名称的 id 不一样。使用时,只需要把appid 改为自己的appid 即可,前面的url 不需要改。

某些情况下公司可能会有多款app,因此会有这样的需求:每个app中都有产品推荐功能,通过当前app能够打开其他app(已经安装的情况下),如果没有安装,则跳到 appStore下载。

比如说,输入法app 中可以推荐 搜狗搜索,当用户点击搜狗搜索图标时,检测当前用户手机上是否有该app。如果有,直接打开该 app,如果没有,则跳转到appStore 下载该app。

跳转到 appStore下载需要知道 该app 的url。从本地打开app 需要知道该 app 的id(项目名,比如

com.sogou.search) 以及协议名(可以有,可以没有,比如 sohu),最后构成的url 是协议名://app的id ,比如

sohu://com.sogou.search。

代码如下:

NSURL*customUrl = [NSURLURLWithString:[NSStringstringWithFormat:@"%@://%@",product.scheme,product.identifier ]];

UIApplication *app = [UIApplication sharedApplication];

if([app canOpenURL:customUrl])

{

//有安装应用,打开应用

[app openURL: customUrl];

}else{

[app openURL:[NSURLURLWithString:product.url ]];

}

相关文章

网友评论

    本文标题:iOS开发中打开本地应用、打开appStore应用、给app评分

    本文链接:https://www.haomeiwen.com/subject/gqufkxtx.html