Android端Firebase Google Sign-In未显示详细同意界面求助
Android Kotlin Firebase Google登录跳过OAuth同意界面,如何强制新用户显示数据共享同意页?
我用Kotlin开发Android应用,集成Firebase Google登录功能后,用户流程能正常运行,但遇到一个问题:不管是新用户还是老用户,选择Google账号后直接完成登录/账号创建,完全跳过了需要告知用户数据共享内容并获取同意的关键界面。
我想要实现的流程是:
- 先提示用户选择Google账号
- 针对首次登录的新用户,展示详细说明数据共享内容的同意界面(如附图所示)
我已经关联了Google Cloud Platform(GCP)并配置了OAuth同意屏幕,也花了两天时间查阅官方文档,但问题依然存在。以下是相关代码片段:
fun signInWithGoogle(activity: Activity, requestCode: Int) { val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestIdToken(CLIENT_ID) .requestEmail() .build() val googleSignInClient = GoogleSignIn.getClient(activity, gso) val signInIntent = googleSignInClient.signInIntent activity.startActivityForResult(signInIntent, requestCode) } private fun googleSignIn() { binding.googleSigninButton.setOnClickListener { EffectAnimation.bounceAnimation(it) val requestCode = GOOGLE_SIGN_IN_REQUEST_CODE loginViewModel.signInWithGoogle(this, requestCode) } } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { super.onActivityResult(requestCode, resultCode, data) if (requestCode == GOOGLE_SIGN_IN_REQUEST_CODE) { val task = GoogleSignIn.getSignedInAccountFromIntent(data) try { val account = task.getResult(ApiException::class.java)!! loginViewModel.firebaseAuthWithGoogle(account.idToken!!) } catch (e: ApiException) { // 异常处理逻辑 } } }
注:以上为代码概述,非完整代码。
恳请社区提供解决思路或指导,谢谢!
内容的提问来源于stack exchange,提问作者Jethro
相关产品推荐
相关产品推荐

