我有一个已整合inApp Purchases Client - Sever Model
的应用。
我很难跟踪Restoration and Delivery of the Products
。
我正在跟踪购买该产品的用户UDID
,而服务器会将该产品投放到该特定UDID
。
Now if i want to restore the previous purchases on a different device,
how will i deliver the content? As my database has a different UDID?
在什么基础上我们必须跟踪购买情况,以便我们可以在所有设备上交付???
答案 0 :(得分:0)
您不应该使用UDID,Apple可能会拒绝您的应用(隐私问题,您可以看到它here)。
与问题相关:
为什么需要UDID?在还原过程中,您将收到每笔交易的收据。您可以将此数据发送到您的服务器,在那里,您可以针对Apple服务进行检查。如果它是正确的,服务器将内容传递给devive。不需要UDID。
答案 1 :(得分:0)
解决方法可以如下:
为用户购买商品时生成唯一标识符(例如使用CFCreateUUID)。将此ID与收据一起发送到服务器。在服务器上存储记录。当用户想要在另一台设备上共享此产品时,他们必须单击“共享到其他设备”按钮。当他们这样做时,会将电子邮件发送到他们指定的电子邮件地址。此电子邮件包含yourapp:// id =的链接。当用户在另一台设备上打开此项时,会向您的服务器发送“恢复”操作。检查给定ID的记录并跟踪“恢复”计数器,以便用户最多只能恢复5台设备。
我知道......这很荒谬,但我还没有找到更好的方法来处理它。 希望这会有所帮助。