如何针对特定设备检查iOS应用商店收据?

时间:2013-11-25 09:59:13

标签: ios iphone app-store in-app-purchase

根据WWDC 2013关于在本地验证应用购买收据的研讨会308,应该验证:

  1. 它是由Apple签署的,因此尚未修改
  2. 它适用于相同的捆绑包标识符(app)和当前正在运行的应用程序的版本
  3. 它与当前设备相关联(即,一个用户不提取购买收据并与其他人共享)
  4. 如何检查第三项?根据幻灯片,应该检查设备标识符哈希,在iOS上是供应商标识符。我知道如何通过调用[[UIDevice currentDevice] identifierForVendor]来获取供应商标识符。但是,如何将其与收据中的相应数据进行比较?在Apple's Receipt Validation Programming Guide,中,他们不会在收据中列出任何与设备ID对齐的字段。

1 个答案:

答案 0 :(得分:0)

如果仔细查看该Apple文档,您将找到实施提示章节。代码显示您需要连接多个数据,生成SHA1哈希并将其与收据中包含的哈希进行比较。

如果您实施服务器端验证,则可以使用that tip I just posted