0

我试图弄清楚如何从 android 上的 google 登录获取 admin sdk 的身份验证令牌。

我可以使用google登录来获取帐户信息,并且可以获取电话请求权限。每当我尝试获取信息时,它都会说该请求没有所需的授权。

在请求许可后:

GoogleSignIn.requestPermissions(activity, requestCode, account, *scopes)

并在 onActivityResult 方法中取回帐户:

account = GoogleSignIn.getSignedInAccountFromIntent(data).getResult(ApiException::class.java)

所以我很确定我需要获得一个身份验证令牌,但我不确定如何获得它?

4

2 回答 2

0

所以我最终通过使用一个名为 appauth 的库来解决这个问题。它允许您登录并获取 oauth 服务器的访问令牌。

于 2019-07-30T20:05:05.323 回答
0

当您配置 Google 登录时,您需要调用requestIdToken方法并将您的服务器的 Web 客户端 ID 传递给它。然后,您的后端服务器可以使用此令牌进行身份验证。

结果Task<GoogleSignInAccount>应包含一个GoogleSignInAccount对象,该对象具有getIdToken()可以发送到后端服务器的方法:
https ://developers.google.com/identity/sign-in/android/backend-auth

于 2019-07-29T22:26:24.230 回答