是否可以OAuth2
使用 android 获取与 Google API 一起使用的令牌AccountManager
?我知道的唯一另一种方法是拥有一个webView
并让用户登录以获取OAuth2
令牌,但这似乎是很多人想做的很多工作,所以如果我可以使用它来获取它AccountManager
那会好很多。有没有这样的功能?
问问题
1428 次
1 回答
1
AccountManager
根本不是用于生成令牌 - 它仅用于存储与Account
. 这些类并不特定于 Google 服务器帐户 - 您可以将它们用于任何类型的帐户。例如,我使用它们来存储 Facebook、Twitter 等的 OAuth2 令牌。
您将需要使用 Google API 来生成 OAuth2 令牌,您Account
使用AccountManager
. 您需要使用 Google API,因为 OAuth2 令牌生成的一部分发生在服务器本身 - Google 将存储它提供的令牌的记录,以及与它们相关的服务器帐户。如果您没有调用 Google API 来生成令牌,Google 将不知道如何将令牌与 Google 服务器帐户匹配。
您使用 aWebView
获取 OAuth2 令牌的方法是正确的方法。
一旦您为 存储了 OAuth2 令牌Account
,您只需AccountManager
在想要使用它进行查询时从 中检索它。因此,您只需要生成一次 OAuth2 令牌(除非它过期),然后您就可以一遍又一遍地使用它。
于 2012-06-16T05:58:35.387 回答