![](/img/trans.png)
[英]Google signIn not working with firebase Android on 6.0.1 on nexus 5
[英]Google signin with firebase on Android not working
我的應用程序已經發布了一段時間,到目前為止,Google 登錄工作正常。 它只是突然停止工作。 我檢查了所有內容,包括 SHA-1 指紋、client_id 等。
經過測試,我發現結果活動不會返回 RESULT_OK。
private lateinit var googleSignInClient: GoogleSignInClient
private var googleSigninLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()){
if(it.resultCode == RESULT_OK){
val task = GoogleSignIn.getSignedInAccountFromIntent(it.data)
try {
val account = task.getResult(ApiException::class.java)
account.idToken?.let {token->
firebaseAuthWithGoogle(token)
}
} catch (e: ApiException) {
Log.d("LOGIN_DEBUG", e.message.toString())
}
}else{
//This is where the code reaches and I am getting RESULT_CODE 0 in the logs
toast(this@MainActivity, getString(R.string.there_was_an_error))
Log.d("LOGIN_DEBUG", it.resultCode.toString())
}
}
val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken(getString(R.string.default_web_client_id))
.requestEmail()
.build()
googleSignInClient = GoogleSignIn.getClient(this, gso)
google_signin.setOnClickListener {
val signInIntent = googleSignInClient.signInIntent
googleSigninLauncher.launch(signInIntent)
toast(this@MainActivity, resources.getString(R.string.please_wait))
}
我看過很多問題,但沒有一個解決方案對我有用。 任何幫助是極大的贊賞。
您能否檢查一下您的 google-services.json 文件?
檢查您的發布 SHA-1 是否存在。
如果游戲控制台生成簽名密鑰,則必須在 firebase 中添加此密鑰的 SHA-1,然后再次下載 google 服務文件
您可以在游戲控制台的應用頁面中找到它(發布 -> 設置 -> 應用完整性)
如果您使用簽名密鑰發布,則從 android 工作室生成簽名報告(您也可以在游戲控制台中找到 SHA-1)並確保將此 SHA-1 添加到 Firestore,然后再次下載文件
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.