为什么SKStoreReviewController不允许我提交评论?

Why the SKStoreReviewController does not let me submit a review?

I succeeded implementing the SKStoreReviewController. But when the prompt comes up, the "Submit" button is grey & disabled.

SKStoreReviewController

I thought it was because I was in debug mode, but when I ship the app with Ad-Hoc PP the result is the same.

Why?

Apple provides the answer for you right here.

When you call this method in your shipping app and a rating/review request view is displayed, the system handles the entire process for you.

Emphasis mine.

To help clarify this some:

  1. When building in XCode, you will see what the OP shows in the screenshot
  2. When building from a CI solution for release, you will not see anything
  3. When running from TestFlight, you will not see anything
  4. When running from the AppStore, only users who purchased (free or paid) your app will see it up to three times a year
  5. When running from the AppStore, users who obtain your app via Connect promo codes will not see it

Apple spells out point 3 here on the provided link:

When you call this method while your app is still in development mode, a rating/review request view is always displayed so that you can test the user interface and experience. However, this method has no effect when you call it in an app that you distribute using TestFlight.

And for point 5, here is what Apple has to say on it at the provided link:

However, customers aren’t able to rate or review an app that was downloaded using an iTunes Connect promo code.

So sorry, you can't pad reviews via promo codes ;)

@Jack Just a guess, but since TestFlight builds can be sent to testers, my guess is that Apple wants to avoid confusion. Otherwise, testers may submit bugs that the review does not work.
Good point, would be nice if TestFlight would allow it for internal testers and not for beta testers/external testers. Or have a way to config it as a setting in TestFlight.
You would think would simply disable submit in TestFlight the same as development.

Submit button is disabled in development version and the View doesn't even show up in Test Flight versions.