mattt / CargoBay

The Essential StoreKit Companion
MIT License
1.77k stars 157 forks source link

Trying to restore purchases from a different device fails #16

Closed marcboquet closed 11 years ago

marcboquet commented 11 years ago

The receipt validation in CBValidatePurchaseInfoMatchesReceipt always checks the device uniqueIdentifier or identifierForVendor.

When restoring purchases from a different device with the same Apple ID this results in a CargoBayErrorPurchaseInfoDoesNotMatchReceipt error.

Maybe you're not supposed to check validation on restoring?

lxcid commented 11 years ago

Hi @apalancat, in my test, different Apple generates different uuid/uuid for vendor when restoring on different device though. I maybe not have test thoroughly. Could you share more information?

marcboquet commented 11 years ago

Thanks @lxcid, I'm trying to replicate it but now it does what you're saying, it responds with the proper UDID. Maybe it was a momentary server issue, if it happens again I'll investigate more.

lxcid commented 11 years ago

Cool, thats a relieve. I understand what you meant. I faced similar issues before. I hope its just a glitch from Apple server though. finger cross

lxcid commented 11 years ago

Hi @apalancat,

I want to highlight a fix pretty similar to this issue in #24. I'm sorry about the bug but I got it sorted out. It was affecting my user who are doing restoration for new install in other device or new device.

You seems to be pointing at the right direction back then.

Hopefully this doesn't affect your as much. I apologize for the bug I introduce.

marcboquet commented 11 years ago

Oh, thanks for letting me know! And thank you for the great work on CargoBay :)