iOS 跳转到Appstore的链接及二维码

1、应用内部跳转到Appstore
  • 跳转到应用详情
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"itms-apps://itunes.apple.com/app/id1061880281"]];

其中 @"itms-apps://itunes.apple.com/app/id1061880281"为拼接地址,1061880281为应用在Appstore注册上线时产生的唯一ID

  • 跳转到评论
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=1232138855&pageNumber=0&sortOrdering=2&type=Purple+Software&mt=8"]];

注:由于iOS11对应用商店进行了重新设计,使用该链接在iOS11系统上会发现找不到应用。解决办法:判断系统版本,如果系统版本大于iOS11,跳转上1链接即可

2、扫描二维码跳转到appstore

但是有可能会碰到多国语言问题,你会发现在其他语言下用安卓设备扫描二维码会进入itunes,而默认展示出来的界面确是英文环境,这是你只需要在 https://itunes.apple.com/app/id1061880281 修改为如下:

例如中文:https://itunes.apple.com/cn/app/id1061880281

例如日文:https://itunes.apple.com/jp/app/id1061880281

等等...也就是在https://itunes.apple.com/后面加上国家的简写国际字符即可

3、检测新版本升级跳转到AppStore

注:这个功能只有写在应用每次启动时检测,如果在设置界面留有检测更新入口,上架时审核会被苹果拒绝,苹果是不允许在AppStore之外的方式升级的

-(void)checkVersion {

    NSString *path = [[NSString alloc] initWithFormat:@"http://itunes.apple.com/lookup?id=%@",@"1061880281"];

    NSURL *url = [NSURL URLWithString:path];

    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:10];

  [request setHTTPMethod:@"POST"];

    NSOperationQueue *queue = [NSOperationQueue new];

    [NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse *response,NSData *data,NSError *error){

        NSMutableDictionary *receiveStatusDic=[[NSMutableDictionary alloc]init];

        if (data) {

            NSDictionary *receiveDic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];

            if ([[receiveDic valueForKey:@"resultCount"] intValue]>0) {

                [receiveStatusDic setValue:@"1" forKey:@"status"];

                [receiveStatusDic setValue:[[[receiveDic valueForKey:@"results"] objectAtIndex:0] valueForKey:@"version"]   forKey:@"version"];

            }else{

                [receiveStatusDic setValue:@"-1" forKey:@"status"];

            }

        }else{

            [receiveStatusDic setValue:@"-1" forKey:@"status"];

        }

        [self performSelectorOnMainThread:@selector(receiveData:) withObject:receiveStatusDic waitUntilDone:NO];

    }];

}

 

- (void)receiveData:(id)sender {

    NSString *serverVersion = [sender objectForKey:@"version"]; //获取版本号

 

    //获取应用当前版本

    NSString *currentVersion = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];

    

    // 服务器版本号大于当前版本号

    if ([serverVersion compare:currentVersion options:NSNumericSearch] == NSOrderedDescending) {

       // 有新版本,执行升级操作

    } else {

   // 没有检测到新版本

    }

}

原文:https://www.cnblogs.com/yang-shuai/p/5999897.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 主要事记录一下,免得有时候会忘记,好记性不如烂笔头,小学一年级的时候老师就这样教我的,哈哈 1、跳转到App St...
    SnailLi阅读 5,987评论 0 0
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,056评论 3 119
  • Requirements Centos 7 Java 8 Install ElasticSearch 2.x rp...
    ___n阅读 2,976评论 0 0
  • 今天是周六,我休半天班。难得在家好好陪伴孩子一下,我给小宝买奶粉的孕婴店开亲子运动会,我就带两宝去了!到那一...
    兆木兆木阅读 1,058评论 0 1
  • 幸好还有孤独 (美国)易殿选 当我东奔西走 最后到了无路可走的时候 幸好还可以退到孤独里据守 孤独是属于我的最后一...
    黑非诗歌阅读 4,429评论 5 9

友情链接更多精彩内容