首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Google ID token在1小时内过期后如何获取

Google ID token在1小时内过期后如何获取
EN

Stack Overflow用户
提问于 2020-09-01 00:38:30
回答 1查看 267关注 0票数 0

我遵循了https://developers.google.com/identity/sign-in/android/sign-in上的指南,在用户登录后,我可以获得登录用户的Google ID令牌。但token将在1小时后过期。

如何在旧的Google ID令牌过期后刷新有效的Google ID令牌,而不会让用户一次又一次地手动登录?我已尝试在令牌过期时使用静默登录。但它似乎不起作用。有没有办法获得有效的Google ID令牌?提前感谢!!

第一次登录时,

代码语言:javascript
运行
复制
private fun handleSignInResult(completedTask: Task<GoogleSignInAccount>) {
    try {
        val account = completedTask.getResult(ApiException::class.java)
        val idToken = account!!.idToken
        CheckDB(this, db).execute()
    } catch (e: ApiException) {
        Log.e("TAG","signInResult:failed code=" + e.statusCode)
    }
}

令牌到期时,我将使用静默签名

代码语言:javascript
运行
复制
override fun onStart() {
    super.onStart()
    val account = GoogleSignIn.getLastSignedInAccount(this)
    if(account!=null) {
        sign_in_button.visibility = GONE
        mGoogleSignInClient!!.silentSignIn().addOnCompleteListener(this, object : OnCompleteListener<GoogleSignInAccount>{
            override fun onComplete(p0: Task<GoogleSignInAccount>) {
                val account = p0.getResult(ApiException::class.java)
                CheckDB(this@SignInActivity, db).execute()
            }
        })
    }
}
EN

回答 1

Stack Overflow用户

发布于 2020-09-01 00:46:10

当您的用户登录(第一次也是唯一次)时,使用获得的令牌向您自己的后端服务器进行身份验证。不需要在谷歌的网站上重新登录。详情请访问:https://developers.google.com/identity/sign-in/android/backend-auth

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63674765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档