“服务账户”和“已安装应用程序”有什么区别?

3
据我理解,主要的区别在于服务账户不需要用户登录进行授权,而安装应用程序则需要。
我正在制作一款 Android 应用程序(一个“安装应用程序”?),提供应用内订阅,并且不需要用户登录到某个账户(一个“服务账户”?)。我想要做的就是检查用户是否已经购买了订阅。为了获得 Google Play Developer API 的客户端 ID,我必须将其声明为安装应用程序或服务账户,但我不确定该选择哪个。
1个回答

4

服务帐号用于处理“自己”的资源(例如管理Compute Engine资源的App Engine应用程序),而不是外部用户的资源(例如标准OAuth流程)。使用服务帐户,应用程序将成为资源的所有者,没有用户需要参与 - 这些不是用户的资源,所以为什么要让他们参与呢?

安装的应用程序很简单 - 它是由用户安装的管理用户资源的应用程序。如果您的应用程序正在管理用户的资源,则必须请求其权限。这方面没有任何变通方法。


有道理!我想要用它来检查用户是否已经购买了订阅。所以我应该使用服务账户,对吗? - Kalina
如果您使用服务帐户,则只能获取有关服务购买的数据。我不是这个API的专家,也许其他人会加入讨论。您可以尝试使用Google Play服务来提示用户访问此数据的权限。 - Jason Hall
1
实际上,阅读文档后,它似乎期望的是您(开发者)的访问令牌,而不是提示用户获取权限。 - Jason Hall
这也是我认为的,但仍然不是很清楚... 我想应该还是一个服务账户。 - Kalina

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接