Hi all,
these observations apply to the Sandbox.
In my app, I do a local receipt validation on startup. Apple's documentation "Validating Receipts Locally" says:
"If validation fails in iOS, use the SKReceiptRefreshRequest class to refresh the receipt"
If I install the app on a new device, receipt validation always fails because there is no local receipt (yet) on the device. But if I use a SKReceiptRefreshRequest, it will prompt the user with a iTunes login. So any time a user installs the app on a new device, they will receive this prompt, which could be confusing.
What's the recommendation here? Add an own prompt before the SKReceiptRefreshRequest that explains why the login is required?
Thanks,
Markus
After my build #1 (depending on successful SKReceiptRefreshRequest) was rejected, I attempted your suggestion in a build #2 - which was also rejected with the justification:
"your app returned an iTunes Store connection error. By continuing without receipt we are unable to access the subscription purchase flow."
Imho, the problem is an occational communication problem in the Sandbox environment.