4

我尝试了解从 iTunes 服务器获取的收据信息,但找不到相关文档。

特别是 , (在 WWDC'12 会议中声称是事实上的客户 ID)和 之间unique_identifierunique_vendor_identifier什么original_transaction_id区别[[[UIDevice currentDevice] identifierForVendor] UUIDString]

{"receipt":
    {"original_purchase_date_pst":"...",        
     "purchase_date_ms":"...", 
     "unique_identifier":"...", 
     "original_transaction_id":"...", 
     "bvrs":"...", 
     "transaction_id":"...", 
     "quantity":"...", 
     "unique_vendor_identifier":"...", 
     "item_id":"...", 
     "product_id":"...", 
     "purchase_date":"...", 
     "original_purchase_date":"...", 
     "purchase_date_pst":"...", 
     "bid":"...", 
     "original_purchase_date_ms":"..."},  
"status":0}`

我希望将此收据信息存储在我的服务器上以跟踪订阅有效性。所以最好知道我应该使用哪个 id 作为用户身份的代理。

4

2 回答 2

5

您的软件应仅依赖 Apple 在其文档中描述的字段。他们可以随时删除 unique_identifier 或 unique_vendor_identifier、更改其含义或更改其值,而无需告知您。

在您的服务器将订阅内容传输到设备之前,您应该按照 Apple 的文档来使用 Apple 的服务器验证订阅收据。

于 2013-03-06T19:01:11.730 回答
3

验证商店收据中有一个很好的表格,它提供了看似可以在收据中依赖的字段。该特定方法确实依赖于与苹果服务器的连接。收据字段的另一个描述(尽管可读性较差)在Receipt Fields中。

于 2013-10-05T22:31:19.617 回答