在iOS10.3以前,APP引导用户评分时需要跳转到AppStore中操作,并且AppStore在国内有时加载会较慢,即便有的用户想给APP好评,但是等了几秒钟评分页面还没加载出来从而放弃。在iOS10.3中,苹果新增了APP内评分的新API,用户可以不用离开我们的APP,即可快速给应用打分。实现效果如图:
而API使用方法也很简单,在需要弹出评分框的地方添加以下代码即可:
#import <StoreKit/StoreKit.h> ... ... [SKStoreReviewController requestReview];由于此API只支持iOS10.3+,因此应该先做版本判断,iOS10.3以下还是跳转到Appstore中进行评分,即将上面代码改为:
if([SKStoreReviewController respondsToSelector:@selector(requestReview)]){ [SKStoreReviewController requestReview]; }else{ NSString * nsStringToOpen = [NSString stringWithFormat: @"itms-apps://itunes.apple.com/app/id%@?action=write-review",@"1041804461"];//替换为对应的APPID [[UIApplication sharedApplication] openURL:[NSURL URLWithString:nsStringToOpen]]; }我们的目的是能得到用户的正反馈,如果在用户刚使用APP时就弹出评分框,可能会给某些用户带来反感,因此,我的做法是在用户第15次打开APP时,先弹出一个略带恳求语气的对话框(如下图),如果点我要吐槽则跳转自己实现的反馈页,即尽量保证只在忠实用户前才弹出真正的评分框。
*根据苹果的官方文档,在TestFlight环境下是不会弹出评分框的。 参考:苹果官方文档 原创文章,喜欢麻烦点个顶,转载著名出处:http://blog.csdn.net/dolacmeng/article/details/70171548