9

如何为 Android 应用实施(自动更新)订阅。

我已阅读文档

据我了解,过程如下:

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

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

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


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

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

这会是正确的过程吗?并保持购买令牌与第一台设备上的相同?


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

4

1 回答 1

-3

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

于 2013-02-06T09:16:57.343 回答