2016-12-12 43 views
0

我使用数据库存储用户购买产品时的值,例如,当用户购买完整版本时,它将保存为值“1”。我使用Gdx-Pay处理购买事宜。LibGdx:无需购买即可加载购买记录()

我想避免每次需要检查用户是否购买产品时都进行服务器调用,使用purchaserestore不是真正的选择,因为苹果不允许它在没有用户按下的情况下运行按钮。

我正在考虑将它存储在启动时的偏好设置中,这样我只需要一个servercall,但是这不是真的不安全?任何人都可以前往pref-file并将值从“0”编辑为“1”,我的系统会认为他们购买了该产品。

你如何解决这个问题?

回答

0

争吵0或1,所以没有人可以弄清楚它是如何工作的。

如果'gadsfsr2fds2'表示没有买到什么是买的正确的代码? :)

您可以在其中包含一些设备唯一编号,因此对于每个设备零和一个将具有不同的值。

不是防弹,但会击退95%的“黑客”。

+0

这并不意味着所有人都必须做的是在网上发布“炒作”的价值,然后任何知道如何编辑首选项的人都可以使用它? –

+0

这就是为什么我说你应该在这个价值代中涉及(用作“盐”)独特的设备编号,因此每个设备都会有所不同。 – MilanG

+0

我在想,在启动时只是对用户数据库做一个servercall,并且在客户端有一个名为“hasBought”的变量,如果用户的值为“1”(买过),那么我们设置hasBought =真正。然后,我们可以通过'game.getHasBought()'在整个应用生命周期中达到hasBought。这样你不能真正欺骗它。 –