I was going to post a message about this exact situation.
I have a game that’s been out for quite a while now, and I had always just re-issued a ‘purchase’ store command when the user wanted to unlock a level. This worked pretty well, and if you had already purchased the IAP the store alert tells you that you have already purchased it and all is good. The experience for the user though is a bit confusing as they are asked to enter their login details in a purchase dialog - this might scare people into thinking they are actually going to be paying again for something they had already purchased in the past (before an app reinstall, or on a different device).
So - I want to add an explicit ‘Restore’ button now alongside a ‘Purchase’ button, so the user experience is less confusing.
The problem is, if I issue a ‘store.restore()’ command for a user who HAS previously purchased the IAP, everything works great, and the restore calls the callback handler that was passed in the store.init(…) method -
*** BUT ***
The PROBLEM is that if a user has NEVER purchased an IAP before, but they trigger the store.restore() method (by tapping a ‘Restore’ button for example), the callback handler NEVER gets called (because there are no IAP products to ‘restore’).
So, I now have the same issue in that I have a loading message appear, but I have no way to find out whether the store network call has completed…
This is a major blocker and I can’t understand how people haven’t been hitting this already when implementing a ‘Restore’ type button in their apps.
Can a Corona rep please give an update on how to resolve this please? I am wanting to do an update to my game but have been holding off renewing my Corona subscription until I am sure I can get this working…
Thanks
Marcel. [import]uid: 9428 topic_id: 28055 reply_id: 115462[/import]