有没有办法检查 SKStoreReviewController.requestReview() 是否要被处理?

Is there any way to check if SKStoreReviewController.requestReview() is going to be processed?

我想显示以下弹出窗口: "Are you enjoying the App?"

如果是 - 然后通过 SKStoreReviewController.requestReview()

显示内置的 Apple 审核请求

如果否 - 然后将客户重定向到支持聊天以在私人双向对话中获得他们的反馈

但不幸的是 requestReview() 调用并不能保证弹出窗口会显示给客户,有时也不会。如果我现在调用它,我没有找到任何方法来检查它是否会显示。 然后看看当客户点击时会发生什么 "Yes" - 在某些情况下,我错过了 5 星评级的机会,谁想要那个?

有什么方法可以检查 requestReview() 是否会显示弹出窗口?

总结一下想要的流程:

  1. 检查 requestReview() 是否要显​​示审核请求
  2. 如果否 - 不向客户显示任何内容并退出。结尾。稍后再试。
  3. 如果是 - 显示自定义弹出窗口 "Are you enjoying the App?"
  4. 如果客户选择是 - 通过 Apple 的内置 requestReview() 请求审核
  5. 如果客户选择否 - 重定向到支持聊天以解决问题并避免差评

感谢您的任何想法!

不可能检查requestReview()是否真的会导致审核请求。

Also remember that the user can disable requests for reviews from ever appearing on their device, so you should avoid referring to your app showing this prompt and never request a review using requestReview() as the result of a user action.

https://developer.apple.com/documentation/storekit/skstorereviewcontroller/requesting_app_store_reviews

Although you should call this method when it makes sense in the user experience flow of your app, the actual display of a rating/review request view is governed by App Store policy. Because this method may or may not present an alert, it's not appropriate to call it in response to a button tap or other user action.

https://developer.apple.com/documentation/storekit/skstorereviewcontroller/2851536-requestreview