APP评分打星

App Store评分方式

1、通用方式通过App内部打开网页形式,跳转到AppStore编辑评论,可评分,可评论。

优点:方便,快捷,不受系统版本限制,目前最常用的方式。

缺点:内部网页形式加载缓慢,等待时间长,加载失败概率大。

2、iOS 6.0以后 在app内部加载AppStore 展示app信息

优点:展示速度比方法三块快

缺点:不能直接跳转到评论编辑页面,需要手动点击评论+编辑评论

3、iOS 10.0.3 新增应用内评分功能,调用系统方法评分。

优点:无须跳转,应用内系统弹框,方便快速。

缺点:只能评分,且一年只能使用三次弹框。

开发步骤:

导入头文件 #import

1,iOS 10.0.3以后调用系统弹框评分

APP评分打星_第1张图片

/**

 * 只能评分,不能编写评论

 * 有次数限制,一年只能使用三次

 * 使用次数超限后,需要跳转appstore

 */

- (IBAction)systemComentBtnAction:(UIButton *)sender {

if([SKStoreReviewController respondsToSelector:@selector(requestReview)]) {// iOS 10.3 以上支持

    //防止键盘遮挡

    [[UIApplication sharedApplication].keyWindow endEditing:YES];

    [SKStoreReviewController requestReview];

}

}

2,跳转到AppStore对应应用评论页面

APP评分打星_第2张图片

/**

 * 可评分评论,无次数限制

 */

- (IBAction)appStoreComentBtnAction:(UIButton *)sender {

NSString  * nsStringToOpen = [NSString  stringWithFormat: @"itms-apps://itunes.apple.com/app/id%@?action=write-review",@"AppID"];//替换为对应的APPID

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:nsStringToOpen]];

}

3,iOS 6.0以后的方法,内部加载AppStore

APP评分打星_第3张图片

注:需签署代理

/**

 * 在APP内部加载App Store 展示APP信息,但不能直接跳转到评论编辑页面。

 * 再加载处App Store展示页面后,需要手动点击 评论→ 撰写评论

 */

```

- (IBAction)webAppStoreBtnAction:(UIButton *)sender {

SKStoreProductViewController *storeProductViewContorller = [[SKStoreProductViewController alloc] init];

storeProductViewContorller.delegate = self;

//加载App Store视图展示

[storeProductViewContorller loadProductWithParameters:


 @{SKStoreProductParameterITunesItemIdentifier : @"APPID"} completionBlock:^(BOOL result, NSError *error) {


     if(error) {


     } else{


         //模态弹出appstore


         [self presentViewController:storeProductViewContorller animated:YES completion:^{

         }];

     }

 }];

}

// 代理方法

- (void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController {

[self dismissViewControllerAnimated:YES completion:^{

}];

}

```

你可能感兴趣的:(APP评分打星)