android - 我可以使用购买状态 API 来验证应用程序是否是通过 Play 商店购买的吗

标签 android in-app-purchase google-play backend

我有一个与我的后端通信的应用程序,我希望后端仅在用户通过 Play 商店购买该应用程序且未窃取它时才接受并响应。所以想法是:

  1. 用户通过 playstore 购买应用
  2. 应用程序通过服务器进行通信,并发送使用该应用程序的用户的 gmail 地址
  3. 如果用户使用传递的 gmail 帐户购买了应用程序,服务器将询问购买状态 API

这样就不可能以任何方式破解应用程序,如果用户不是通过 Play 商店购买它,服务器可以很容易地检测到它并且没有办法伪造它

问题是在我看来,购买状态 api 仅适用于应用程序内购买,而不是用于检查应用程序是否是通过播放服务器本身购买的。有人知道我如何做我想做的事吗?在我之前没有人遇到过这个问题吗?

最佳答案

根据documentation ,如果您提供订阅式服务,Purchase API 提供验证购买时提供给设备的 token (不是用户的 GMail ID)的能力。 token 被安全地嵌入(或多或少),我们假设很难找到并复制到另一台设备。

如果您担心您的应用遭到盗版,请看这里:

How to secure my app against piracy

关于android - 我可以使用购买状态 API 来验证应用程序是否是通过 Play 商店购买的吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19165994/

相关文章:

java - 在 Android 手机上模拟低 RAM

android - 避免再次启动应用程序

android - 未收到使用 API v3 的 Android 应用内购买结果

android - 如何在不收费的情况下测试IAB

ios - Apple In App Purchase 和外部订阅

android - 如何在 Google Play 上为特定设备发布新版应用

android - 如何在从 Android Market 下载和安装应用程序后启用自动创建快捷方式?

android - 如何获取我自动生成的 firebase 节点 key ?

Android:PdfDocument 生成空 pdf

Android - 如何创建类似市场或 Shopsavvy 的用户界面