iOS 10.3新增在APP内给AppStore的应用打分

先来说一下之前的去App Store打分评价的做法
  • 使用连接跳转到App Store打分评价
NSString *iTunesLink = @"itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=(app对应的App Store中的ID)&onlyLatestVersion=true&pageNumber=0&sortOrdering=1&type=Purple+Software";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesLink]];

//解释一下相应的参数 
//onlyLatestVersion:true 只针对最新的版本 
//pageNumber:0 第一页显示的品论  
//sortOrdering(0:默认进入的是APP详情 1:直接进入评论 3:直接进入相关)

  • iOS6之后有了StoreKit可以在内部直接打开App Store(这种方法无法直接跳转到评价的item)进入的是默认的APP详情

1.创建一个SKStoreProductViewController
2.调用loadProductWithParameters:completionBlock:方法将APP对应的AppStoreID 参数传进去
3.实现代理方法 就可以跳AppStore

SKStoreProductViewController *productStore = [[SKStoreProductViewController alloc] init];
 productStore.delegate = self;
 [productStore loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier : @"991552878"} completionBlock:^(BOOL result, NSError * _Nullable error) {
      if (result) {
           [self presentViewController:productStore animated:YES completion:^{
            }];
       }
       else {
                NSLog(@"error:%@, result:%d", error, result);
       }
 }];

//代理方法
#pragma mark - SKStoreProductViewControllerDelegate
- (void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController {
    [self dismissViewControllerAnimated:YES completion:^{
    }];
}

  • iOS10.3之后,又增加了一个打分方法,仅仅是可以用来打分,无法评价,使用起来也非常的方便直接调用类方法接口即可
[SKStoreReviewController requestReview];//一行代码搞定

效果图(在APP内部进行App Store打分)


appstore 打分.png
我是这样使用的
//评分
- (void)loadAppStoreController {
    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 10.3) {
        [SKStoreReviewController requestReview];
    } else {
        SKStoreProductViewController *productStore = [[SKStoreProductViewController alloc] init];
        productStore.delegate = self;
        [productStore loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier : @"991****78"} completionBlock:^(BOOL result, NSError * _Nullable error) {
            if (result) {
                [self presentViewController:productStore animated:YES completion:^{
                }];
            }
            else {
                DLog(@"error:%@, result:%d", error, result);
            }
        }];
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,166评论 25 709
  • 觉察日记 - 25 事件背景(Fact):早上,我喝完一杯咖啡后感觉不过瘾,正在纠结是不是要去附近的咖啡厅买一杯咖...
    Lily_5f8d阅读 1,360评论 0 1
  • 今天阅读了《大学》,好多情感油然而生。发现现在的泡沫文化真的越来越多,每一篇文章都感觉好有道理,好有用处啊!其实,...
    枫叶红是猪阅读 3,666评论 2 1
  • 我和小李认识在高二分班那天。文理分科,终于挥别了我憎恨的化学。那天对我来说就是天大的好日子。 小李是一个不怎么爱说...
    土豆五花肉阅读 4,882评论 5 8

友情链接更多精彩内容