获取可与服务器共享的OAuth2授权代码

cda*_*ung 7 android oauth-2.0 google-drive-api google-oauth

我的Android应用需要向我的服务器发送授权代码,以便服务器可以使用该代码获取用户的Google云端硬盘帐户的访问令牌.我一直试图弄清楚如何获取授权代码,我在Google API文档中找到了这一点(使用OAuth 2.0 for Installed Applications):

此序列首先将浏览器(系统浏览器或作为Web视图嵌入在应用程序中)重定向到带有一组查询参数的Google URL,该参数指示应用程序所需的Google API访问类型.与其他方案一样,Google处理用户身份验证和同意,但序列的结果是授权代码.授权代码在浏览器的标题栏中返回,或作为查询字符串参数返回(取决于请求中发送的参数).

在接收到授权代码之后,应用程序可以交换访问令牌和刷新令牌的代码.应用程序在此交换过程中显示其client_id和client_secret(在应用程序注册期间获取)和授权代码.收到刷新令牌后,应用程序应将其存储以备将来使用.访问令牌使您的应用程序可以访问Google API.

现在我不知道如何在我的Android应用程序中获取此授权代码,因为我看到的Android示例似乎直接获得了访问令牌.我正在查看Android AccountManager类,它有一个getAuthToken方法,但这似乎是指访问令牌而不是授权代码.

那么如何获得可以与服务器共享的授权代码呢?如果有可能,我会非常感谢一些示例代码.如果不可能,可能的解决方法是什么?

Jay*_*Lee 5

您可能需要查看跨客户端身份文档.它应该使您无需来回传递用户令牌.