【问题标题】:How to get OAuth 2 refresh token using access token如何使用访问令牌获取 OAuth 2 刷新令牌
【发布时间】:2013-09-05 11:54:17
【问题描述】:

我正在开发一个应用程序,在该应用程序中我使用 OAuth 2.0 在用户 Google 标签中上传数据。我能够连接到用户邮件,一段时间后访问令牌过期。
如何使用令牌刷新器获取新的访问令牌?

我正在使用 javamail 示例代码进行身份验证并获取访问令牌。我正在搜索它很多天,但没有找到任何正在运行的代码。我是android新手,所以请提供一些代码或完整的示例代码。

【问题讨论】:

标签: android gmail oauth-2.0


【解决方案1】:

我现在得到了答案,我想分享给大家,因为很多问题都没有答案。

要首先获取新令牌,您必须使用以下代码使令牌无效

accountManager.invalidateAuthToken("com.google", token);

在使您需要获取新令牌的令牌无效后,下面的代码提供了一个新令牌

String newToken = AccountManager.get(this).getAuthToken(new Account(account, "com.google"),
                 AUTH_TOKEN_TYPE, true, null, null).getResult().getString(AccountManager.KEY_AUTHTOKEN);

现在您可以使用新令牌进行身份验证和登录。

【讨论】:

  • 我使用相同的代码(java 邮件)。但是当我的应用程序正在运行/在任务栏中时,我会在后台(服务)中发送邮件,这会很好。但是当我从任务栏中删除时,我无法获取活动对象,我们需要 AccountManager.get(this).getAuthToken(new Account(account, "com.google"), AUTH_TOKEN_TYPE, true, null, null).getResult().getString(AccountManager.KEY_AUTHTOKEN);
猜你喜欢
  • 2015-11-26
  • 1970-01-01
  • 2014-07-15
  • 2016-08-13
  • 2020-02-26
  • 2023-01-23
  • 2015-07-19
  • 2013-11-05
相关资源
最近更新 更多