android - 识别 Google Play 订阅用户

标签 android google-play billing google-play-services

我如何为 Android 应用实现(自动续订)订阅。

我读过 documentation

据我了解,流程如下:

  • 用户在应用程序上订阅此类订阅。这将生成一个购买 token 。
  • 应用将此 token 连同用于识别此用户的内容
  • 发送到服务器
  • 服务器将与该用户一起存储此购买 token 并将订阅标记为有效
  • 服务器使用类似 cronjob 的方式通过 http-api 定期(通常每天一次)验证此购买 token
  • 如果订阅不再有效,订阅将在服务器端被标记为无效。
  • 如果应用向服务器请求需要订阅的资源,客户端将随请求发送此用户身份字符串。然后我们检查数据库,如果该用户的订阅仍然被标记为有效。

我现在的问题是,我们应该如何识别这些用户?我们是否有一个简单的用户 ID 可以在我们的应用程序和服务器之间共享?还是我们应该使用不同的东西?这里的最佳做法是什么?

我们已经在 ios 上做了类似的订阅,我们使用设备的 uuid 来识别用户(至少只要我们能够使用 uuid)。


根据下面的答案,我们应该生成一个唯一的 ID。这对于每个设备(或每个应用程序安装)都是唯一的。但是,如果用户更改他的设备或重新安装应用程序,则此 ID 将不再相同。所以我不确定这个用例中的流程是怎样的。我想到了这样的事情:

  • 用户在他的第二台设备上使用同一个 google play 帐户登录。
  • 当应用启动(或激活)时,我们将获取用户订阅
  • 然后,我们将从订阅中接收此购买 token ,并将它们与新的唯一 ID 一起发送到我们的后端服务器,就好像用户进行了新的订阅一样。

这是正确的流程吗?并保持购买 token 与第一台设备上的相同?


好的,我关于识别用户的问题已得到解答,提供的链接提供了足够的信息。如果我有一些问题,我会在 SO 的新线程中提出更多问题。

最佳答案

此链接可能对您有所帮助,因为您希望唯一地识别用户。请注意,用户的个人信息仅由 Google 提供。您应避免获取用户的私有(private)信息。 http://www.pocketmagic.net/2011/02/android-unique-device-id/#.URIe_B3Wgr7

关于android - 识别 Google Play 订阅用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14725243/

相关文章:

android - 您可以在 Google Play 商店中为您的商品详情保存草稿吗?

android - GoogleAuthUtil : get access token that will provide an email address?

google-app-engine - 如何将预先存在的计费帐户与 Google 云控制台中的新应用程序引擎项目关联?

php - Laravel Cashier - $stripeToken 从哪里来?

android - Fragments 什么时候有非空的 savedInstanceState

android - 为 Android 模拟器创建我自己的磁盘

android - 创建 Open Graph 故事时出现问题 : "unable to generate story" and "failed to generate preview"

android - Google Play 商店,无法再看到 Total Installs

android - 在 iOS/Android 应用程序中使用 SIM 卡信用的政策

android - Android 2.3.3 (API10) 上的下拉控件