我已经实施了 IAP,其中一次性购买可以解锁应用程序中的某些功能。由于每个用户只进行一次购买,因此我可以询问 Apple 的 IAP 服务是否该用户进行了购买。如果是这样,则解锁该功能。如果没有,则显示 IAP 提示。我可能还在用户默认值中保留了一些“userDidMakePurchase”标志,作为使用带网络连接的应用程序的不完美解决方案。
现在我想实现一个 IAP,用户可以在其中一遍又一遍地进行。每次给用户十个代币以使用应用内货币。如何确定特定用户在启动应用程序时拥有的令牌数量?
到目前为止,我已经考虑在用户默认值中保留令牌计数。这有一些主要缺点,例如删除和重新安装应用程序会清除用户的代币余额。令牌也不会转移到其他设备。
当然,我可以将令牌计数保存在我自己的服务器上或使用 AWS。但是,如果可能的话,我想避免这种情况。我只熟悉 IAP 基础知识,所以也许 Apple 会跟踪所有购买,我可以从那里弄清楚。