通过IOS应用内购买活动通知服务器(续订,取消等.etc)

时间:2018-02-19 08:32:08

标签: ios iphone in-app-purchase itunesconnect receipt-validation

我在我的应用中使用自动定期订阅,我需要更改订阅状态,如果从iOS再次失败。

我正在关注此documentation,但有些事情对我来说仍然不明确:

  • 如果我的服务器错过了来自iOS的发布数据
  • ,该怎么办?
  • 我如何知道订阅是否已续订
  • 如何将我的应用用户memberId(唯一ID)链接到交易
  • 购买后,latest_receipt表单iOS发布数据(服务器到服务器通知)和捆绑收据网址之间有什么区别。

1 个答案:

答案 0 :(得分:0)

以下是我让用户订阅的步骤:

  1. 要求用户登录。如果他们没有登录,则无法订阅。
  2. 将应用收据发送到我的服务器并存储在那里。如果失败则无法订阅。这需要这个来验证从服务器随时获取latest_receipt信息。
  3. 用户通过itunes订阅。
  4. 使用应用商店验证收据并检查latest_receipt以确保订阅。 (这是服务器端完成的)
  5. 定期重复步骤4以确保他们仍然订阅
  6. 所以回答你的问题:

      

    如果我的服务器错过了来自iOS的帖子数据怎么办?

    由于我在订阅之前收到了用户的应用收据,因此我可以随时直接从我的服务器查看itunes并获取订阅状态。

      

    我如何知道订阅是否已续订?

    由于您的服务器上有用户收据,您可以使用它从Apple获取最新收据并检查订阅的当前状态。这是你如何做到的Validating Receipts With the App Store

      

    如何将我的应用用户memberId(唯一ID)链接到交易?

    您可以使用收据中的“原始交易标识符”作为唯一ID。对于为特定订阅生成的所有收据,此值都相同

      

    latest_receipt表单iOS帖子有什么区别   数据(服务器到服务器通知)和捆绑收据URL后   购买?

    当您将收据发送到要验证的应用商店时,它将返回已发送的收据的JSON表示,这可以在“收据”字段中找到。如果您的收据包含订阅,您将获得“latest_receipt”和“latest_receipt_info”字段。检查自动续订订阅当前是否处于活动状态时,这些字段非常有用。如果捆绑收据是最新的,那么“收据”和“latest_receipt”将是相同的。