Hi,
I am woring on error handling logic for In-App Purchases and I'm running into a strange issue.
If I set my iOS device Link Conditioner to 100% loss and then attempt to restore purchases within my app sandbox environment, It never asks the user for an app store password, it then waits a while and then it calls back on -paymentQueueRestoreCompletedTransactionsFinished:queue instead of on - paymentQueue:restoreCompletedTransactionsFailedWithError:
If I turn wifi off completely, then it returns on the correct method (- paymentQueue:restoreCompletedTransactionsFailedWithError:)
The error handling logic works as follows:
If I get a callback on -paymentQueue:restoreCompletedTransactionsFailedWithError:, I present the user with an appropriate error to check their network connection or in-app purchase capabilities.
If I get the callback on -paymentQueueRestoreCompletedTransactionsFinished:queue and then see no purchases, I tell the user that the purchases were restored successfully, however the in-app purhcase was not found and I ask them to buy it.
So its quite concerning when I get a callback on -paymentQueueRestoreCompletedTransactionsFinished:queue when in fact purchases have not beeing restored, because then I give the user incorrect information, and as far as I can tell, I have no way of figuring out when the wrong callback was called. I can only reproduce this issue in one case when the link conditioner is set to 100% failure.
Has anyone seen this issue or have any troubleshooting steps I can take?
Thanks,
Jeff