我有一个有关应用内购买功能的架构师系统。
我在应用内购买的商品包括:
客户:我的移动应用程序。
服务器:我的服务器系统。
苹果商店:在应用程序购买中配置为连接到iTunes的苹果商店
。 挂钩状态更新通知: statusUpdateNotification
是用于自动续订的服务器到服务器的通知服务。通知指定了发送通知时订阅的状态。 参考链接:https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/Subscriptions.html#//apple_ref/doc/uid/TP40008267-CH7-SW6
数据库:我的数据库系统。
当前工作流程 :
ios's Storekit
和用户的iTunes连接向苹果商店付款。product_id
与商店匹配并向移动应用返回账单,Apple商店将向用户收费。bill_id
和user_id
以便下次更新 ---------- 步骤6(1) 。服务器将响应客户退出流程( 步骤空号码 )=>购买成功的第一种方法。在解决方案中,该项目是可更新的,系统将使用 Hook statusUpdateNotification 系统。
步骤1 :上面的相同操作。
步骤2(2):对于Table 6-3中列出的关键订阅事件,Apple商店将通过HTTP POST将JSON对象传递到您的服务器。 我的问题从这里开始。 。苹果将使用latest_receipt_info
发送请求,我可以解析得到original_transaction_id
,但是如果仅拥有original_transaction_id
,我的系统将无法为某人更新,因此我需要使用original_transaction_id
从我的数据库中查询,并在{ 步骤3(1))之前存储user_id
(步骤3(2))) 如果是幸运键 因为钩子在客户端向服务器发送账单之前从苹果收到了回执信息,我不知道original_transaction_id
user_id
}。)
如果Hook可以使用user_id
从数据库中获取original_transaction_id
,则我的购买过程将成功。否则我的系统将失败,因为我不知道用户将被更新为已购买的产品。
我不确定苹果的商店何时将帐单发送给我的客户以及何时将其发送到挂机。糟透了。
我的问题:我的解决方案是真的吗?任何人都有解决此问题的解决方案?谢谢。如果您不理解我的描述,请提供要求的清晰信息。