【问题标题】:SKStoreReviewController.requestReview() not working in Live AppSKStoreReviewController.requestReview() 在 Live App 中不起作用
【发布时间】:2018-06-24 03:39:38
【问题描述】:
这是我的请求审核代码:
if #available(iOS 10.3, *) {
SKStoreReviewController.requestReview()
}
else{
print("Review is not available with in the app")
}
在开发模式下它工作正常,我可以像这样得到 PopUp:
但是在从 appstore 下载的 Live 应用中,应用没有显示此评分弹出窗口,如果用户点击评分按钮,则不会发生任何事情。
【问题讨论】:
标签:
ios
swift
skstorereviewcontroller
【解决方案1】:
来自documentation:
虽然您应该在应用的用户体验流程中调用此方法,但评分/评论请求视图的实际显示受 App Store 政策的约束。由于此方法可能会或可能不会显示警报,不适合在按钮点击或其他用户操作时调用它。
(突出显示我的)
如果您有问题中所说的评分按钮,则不应期望它显示提示。
只有在以下情况下才会显示提示:
- 用户尚未在设置中禁用审核提示。
- 一年内向用户显示提示的次数不超过 3 次。
如果您必须在用户交互时请求审核,则必须使用如下代码(取自 Requesting App Store Reviews Sample Code)将用户引导至您应用的 App Store 页面:
@IBAction func requestReviewManually() {
// Note: Replace the XXXXXXXXXX below with the App Store ID for your app
// You can find the App Store ID in your app's product URL
guard let writeReviewURL = URL(string: "https://itunes.apple.com/app/idXXXXXXXXXX?action=write-review")
else { fatalError("Expected a valid URL") }
UIApplication.shared.open(writeReviewURL, options: [:], completionHandler: nil)
}