-
Notifications
You must be signed in to change notification settings - Fork 72
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Products not seen as purchased in TestFlight builds #41
Comments
When you are checking the didChangeStatesFor callback? When the app is relaunched? At first glance, this sounds like a sandbox/production discrepancy but not 100% sure based on your description. |
Yes, I'm calling fetchDataIfNecessary() on the product interface controller when the app is launched and then checking didChangeStatesFor callback. |
You won't get the didChangeStates callback every time. If the app was purchased previously, it will already be purchased when you next launch and you won't get a callback because nothing has changed. |
After calling |
Ah, gotcha, so I should manually check if a product is purchased by calling merchant.product(withIdentifier: "iap.productidentifier"). Thanks! |
Glad I could help. One pattern that might be useful is to declare the As a general rule, the |
I'm seeing the following behavior only in TestFlight builds. This is with configuration .default.
In the didChangeStatesFor: callback, the product purchased in step 1 doesn't seem to come back as .purchased. Note that it does get returned when calling restorePurchases().
What's strange is that in dev builds, the product comes back as .purchased. Is this expected behavior because of the difference between sandbox and production iTunes accounts?
The text was updated successfully, but these errors were encountered: