即使用户在提交审核之前取消并且审核弹出窗口不再显示,下面的代码也会成功返回。 (仅第一次展示)
当用户未提交时如何重新启动应用程序内评论弹出窗口?
Task <ReviewInfo> request = reviewManager.requestReviewFlow();
request.addOnCompleteListener(task -> {
if (task.isSuccessful()) {
// Getting the ReviewInfo object
ReviewInfo reviewInfo = task.getResult();
Task <Void> flow = reviewManager.launchReviewFlow(this, reviewInfo);
flow.addOnCompleteListener(task1 -> {
// The flow has finished. The API does not indicate whether the user
// reviewed or not, or even whether the review dialog was shown.
});
}
});
为了提供出色的用户体验,Google Play 对向用户显示审阅对话框的频率强制执行有时限的配额。由于此配额,在短时间内(例如不到一个月)多次调用 launchReviewFlow 方法可能并不总是显示对话框。
注意:配额的具体值是一个实施细节,Google Play 可以更改该值,恕不另行通知。
由于配额可能会发生变化,因此应用您自己的逻辑并瞄准请求审核的最佳时机非常重要。例如,您不应该使用号召性用语选项(例如按钮)来触发 API,因为用户可能已经达到了配额,并且不会显示流程,从而给用户带来糟糕的体验。对于此用例,请将用户重定向到 Play 商店。
这是对话的设计。
这里只是为了记录和比较类似的对话在 iOS/macOS 上的工作原理。您的代码仅被视为显示对话的请求。操作系统可能会也可能不会显示它。它每年向用户展示的次数绝不会超过两次。操作系统可以保护用户免受不良开发人员的侵害,这些开发人员会根据他们的需要向他们发送垃圾邮件。
和 Google Play 上的很相似,虽然规则稍微宽松一点,但也没有那么疯狂,可以在同一天显示两次对话。
解决方法(用于测试等)是转到设备上的 Google Play 应用程序设置并清除数据(清除缓存还不够),然后再次启动。使用您的帐户重新登录后,返回您的应用程序并再次启动应用程序内审核流程。 “审阅”对话框现在应该出现在屏幕上。
祝你好运!