检查Google Play收据是否足以确保我的播放器偏好数据统一?

时间:2018-09-25 16:57:01

标签: unity3d google-play in-app-purchase

具体来说,我现在正在存储游戏项目的数据,这取决于Google Play的IAP服务。

我正在使用Unity提供的playerprefs,我知道这是不安全的。因此,我的想法是获得该玩家从游戏中购买的物品的收据:如果用户购买了一件物品,他就可以使用,否则就不能使用。

那么这种方式对我的游戏足够安全吗?

此游戏使用Unity,并且是多人在线游戏,并且我没有用户服务器端身份验证的能力,这就是为什么我在考虑这种解决方案。

2 个答案:

答案 0 :(得分:1)

这实际上是IAP服务文档中的内容,被认为是在应用购买中进行验证的唯一方法。

答案 1 :(得分:0)

接受的答案不正确。

  

这实际上在IAP服务的文档中,并且   被视为验证应用购买的唯一方法。

从Unity的收据验证器获得的IPurchaseReceipt可以强制转换为GooglePlayReceipt。然后,您可以将收据中的GooglePlayReceipt.purchaseTokenGooglePlayReceipt.productIDGooglePlayReceipt.packageName发送到您自己的服务器,然后服务器可以使用Google Play开发者API来验证购买。

https://developers.google.com/android-publisher/api-ref/purchases/products/get

  

这样对我的游戏来说足够安全吗?

这实际上取决于应用程序的类型,但是在托管成本和涉及的工作量之间,实施服务器端收据验证可能不值得。