我创建了一个应用程序,在第一次启动时为用户提供 3 个硬币。
一旦用户用完 3 个硬币,他应该通过应用内购买购买无限的硬币。
问题是,如果用户不想购买无限的硬币,他可以删除该应用程序,重新安装该应用程序,然后他将再次拥有 3 个硬币。
他可以永远这样做,而无需购买应用内购买。
有没有一种简单的方法可以防止这种情况发生?即使删除了应用程序,我如何知道用户是否已经完成了应用程序内的硬币?
您可以用两种不同的方式处理这个问题。
方法一:将标识符存储在KeyChain中
- 首先检查来自的值keychain https://github.com/jrendel/SwiftKeychainWrapper如果用户已经安装
该应用程序是否在此设备上。
- 如果是第一次安装,则提供免费硬币并将用户 ID/标志存储在钥匙串中以识别将来的安装。
如果用户重置设备,您将丢失此钥匙串数据。
重置设备后,您将再次提供硬币,因为您的标志/标识符将不会出现在钥匙串中。
如果你想避免这种情况,那么你必须采用第二种方法。
方法2:在服务器上存储标识符
而不是将详细信息存储在设备钥匙串上。您必须将其保存在您的服务器上。应用程序首次启动时,您必须检查您的服务器以提供详细信息。
即使用户重置设备,这种方法也始终有效
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)