Apple可以告诉我用户购买了什么吗?

时间:2015-03-07 17:11:34

标签: ios iphone xamarin

我知道恢复功能并且之前在我的应用中实现了它,但仍然有漏洞。 我正在尝试根据用户使用的应用程序显示自定义屏幕。在没有用户交互的情况下,我希望能够让苹果检索到属于该应用的该用户的应用内购买? 其他帖子提到我应该通过调用方法来跟踪它:

NSUserDefaults.StandardUserDefaults.BoolForKey

但同时认为它不安全。 我目前正在将数据存储在DB中。这很容易,但请考虑以下情况:

  1. 用户下载应用。我的数据库记录用户有0个应用内购买。用户稍后购买了1个应用内购买。我的DB也记录了这一点。
  2. 用户因任何原因删除应用
  3. 过了一会儿,他重新下载了应用程序。此时我的数据库重新开始并记录用户0购买的内容。
  4. 用户看到应用内购买(他已购买)并再次点击购买。
  5. 在这里,我的执行流程停止,苹果接听...... Apple警告用户他已经购买了应用程序并提供免费获取。
  6. 该消息仅供用户使用,我的应用程序并不知道这一点。我无法找到苹果的电话询问用户为我的应用购买了什么?我也不希望用户再次付款,但能够始终知道他在过去的任何特定点购买了什么。为什么这些信息在苹果方面如此密封?他们知道用户可能有应用程序而且我只询问该应用程序中的应用程序内购买情况。

    我正在使用Xamarin。

2 个答案:

答案 0 :(得分:1)

您需要刷新收据文件,然后进行扫描。它将列出用户在该应用程序内所做的所有购买,无论它使用何种设备。此代码可让您解析文件并查看所做的购买:https://github.com/rmaddy/VerifyStoreReceiptiOS

答案 1 :(得分:0)

您可以简单地创建用户在想要从应用内添加内容中购买内容时创建的数据库商店帐户信息。因此,为了进行购买,他们必须为您的应用创建用户名和密码,从而为您提供一种方法来跟踪谁拥有应用内容中的内容,而无需询问苹果。