【发布时间】:2014-02-26 19:05:21
【问题描述】:
我想使用 oAuth 来检索用户的 ID,最好只检索他们的 ID,而不是他们的电子邮件地址、姓名或任何其他信息。
在 Android 中,我知道如何使用 Google Play API 来获取令牌,并且可以调出对话框,用户在该对话框中授予应用程序访问所请求数据的权限。我通常使用 AccountManager 来调出允许用户选择用于授权应用程序的帐户的电子邮件地址的对话框。从这个意义上说,我已经可以访问他们的电子邮件地址,尽管我并不真正需要它。我真正想要的是与该电子邮件地址关联的 Google 帐户的 ID。我也不想使用 Google+,因为这需要访问太多私人信息。
我发现最接近的范围是:
https://www.googleapis.com/auth/userinfo.email
但是,由于当他们从 AccountManager 中选择电子邮件地址时,我已经可以访问他们的电子邮件地址,因此要求用户授予他们电子邮件地址的权限似乎没有意义。
是否有我可以调用的仅检索用户帐户 ID 的范围?
编辑: 显然我不是唯一对此感到生气的人: http://www.club4850.com/?p=46970
这就是像 WhatsApp 这样的公司取得成功的原因。他们不需要注册或访问有关用户的任何信息。 Google 的登录显示请求的权限“知道您在 Google 上的身份” - 失去大量用户的好方法。
【问题讨论】:
-
帐户 ID 是什么意思,它与他们的电子邮件地址有何不同?
-
帐户 ID 通常是一个数字,尽管它可以是一些长字符串。它通常不会向应用程序透露。该应用程序将首先检索一个令牌,然后将其发送到我的服务器,然后使用它来检索存储的用户 ID。