iOS10.3 的评论系统
iOS10.3 对 App 的评论系统进行了较大的升级。主要在三个方面。
-
支持 App 内评分
在此之前我们要实现 App 内评分需要使用SKStoreProductViewController
。它只会在 App 内部模态打开在 AppStore 的详情页。iOS10.3 后 StoreKit 增加了支持 App 内评分的SKStoreReviewController
。它只有一个类方法+(void)requestReview
。在满足条件时它会在 App 内部弹出用来评分的 Alert。如下图所示,它只能评分,不能评论,且在没网络或调用次数频繁的时候将没有任何效果。弹出的 Alert 使用 UIWindow 实现,windowLevel 为 UIWindowLevelStatusBar - 1,即 999,你可以用更高或相同的层级来遮盖它。
-
支持直接跳转到 AppStore 的评论编辑页
通过在项目 URL 查询参数的最后加上 action=write-review 就可以跳转到 AppStore 并自动模态打开评论编辑页面,如下图所示。例如:itms-apps://itunes.apple.com/app/id541052011?action=write-review
。在此之前我们只能跳转到评论页。
-
支持开发者回复
开发者可以在 iTunes Connect 中回复用户的评论。并可以编辑和删除自己的回复。回复后会在 AppStore 对应的评论下会公开显示“开发人员回复”。用户只有在 iOS10.3 之后的系统才能看到回复内容。此外,开发者还可以举报删除用户的评论。回复和举报与用户评论一样,都需要最多 24 小时的审核。
参考资料
Ratings, Reviews, and Responses
SKStoreReviewController requestReview() may or may not present and alert?