Ios 如何检查用户是否已在应用程序采购中下载了非易耗品
我在申请表中提供非消耗品 假设用户购买了该项目,并尝试在另一台具有相同id的设备上安装该应用程序。如果用户已登录并已购买该商品,我想显示一些弹出窗口,告诉用户您已购买该商品,请立即免费下载。现在发生的情况是,当我再次单击购买该商品时,则表示您已购买该商品,请单击下载 是否有任何方法可以获取用户登录详细信息,并检查用户是否已经进行了应用内购买 登录并尝试购买已购买的商品时出现问题。两种警报视图会不时出现。我使用的是沙盒环境Ios 如何检查用户是否已在应用程序采购中下载了非易耗品,ios,in-app-purchase,storekit,Ios,In App Purchase,Storekit,我在申请表中提供非消耗品 假设用户购买了该项目,并尝试在另一台具有相同id的设备上安装该应用程序。如果用户已登录并已购买该商品,我想显示一些弹出窗口,告诉用户您已购买该商品,请立即免费下载。现在发生的情况是,当我再次单击购买该商品时,则表示您已购买该商品,请单击下载 是否有任何方法可以获取用户登录详细信息,并检查用户是否已经进行了应用内购买 登录并尝试购买已购买的商品时出现问题。两种警报视图会不时出现。我使用的是沙盒环境 您已经购买了此文件,但尚未下载。点击“确定”立即下载。 此警报视图只有“确
谢谢我不明白你为什么认为你需要做些不同的事情 正如您所说,系统检测到用户已经拥有该产品,并向用户发出“点击下载”警报。如果用户选择下载,那么您将获得一个状态为“已购买”或“已恢复”(我忘了是哪个)的
SKPaymentTransaction
。那你就照常提供产品。因此,用户知道他没有被第二次收费,他得到了产品
如果您说要自动检测用户拥有的产品,而用户无需做任何事情:您只能通过将
restoreCompletedTransactions
发送到SKPaymentQueue
来实现。当您这样做时,用户可能需要输入其iTunes密码。我更喜欢在我的用户界面上有一个“恢复购买”按钮,这样用户就知道为什么要询问他的密码。沙箱似乎存在很多稳定性问题,请在Apple开发者论坛上查看此线程(需要登录)。我一直在用消耗品测试应用内购买,从未见过案例2,我只得到案例1(正如论坛中提到的)。因此,你有时会觉得自己很幸运,甚至能得到2):(P)面对这两个问题,我有以下的思考:
1] 包括我在内的许多开发人员通过重启设备解决了第一个问题
2] 对于第二个问题,由于“购买的”或“恢复的”回调在录制“OK”时被调用,所以产品本身将可用
希望有帮助!我已经编辑了我的问题。现在又出现了其他问题。你能帮我解决一下吗?你有什么想法吗?为什么在沙盒环境中的不同场合会出现这种不同的行为?我不知道。我没有看到这个问题。当我单击“购买”按钮时,我想在超时后取消交易。那么你能告诉我如何取消交易吗交易