![](/img/trans.png)
[英]Exception com.google.android.gms.common.api.ApiException: 12500
[英]Google Sign In throws an exception com.google.android.gms.common.api.ApiException: 12500
我有一個用 Android 編寫的簡單應用程序,我想在其中執行 Google Sign 和 Firebase 身份驗證。 我從官方頁面復制粘貼代碼。
val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken(getString(R.string.default_web_client_id))
.requestEmail()
.build()
if (requestCode == REQUEST_CODE_GOOGLE_SIGN_IN) {
val task = GoogleSignIn.getSignedInAccountFromIntent(data)
try {
// Google Sign In was successful, authenticate with Firebase
val account = task.getResult(ApiException::class.java)
firebaseAuthWithGoogle(account.idToken!!)
} catch (e: ApiException) {
// Google Sign In failed, update UI appropriately
Log.w("aaa", "Google sign in failed", e)
// ...
}
}
但是這個簡單的代碼拋出異常com.google.android.gms.common.api.ApiException: 12500:
有什么問題,我檢查了在線資源,每個人都說添加支持電子郵件,添加應用程序圖標,但是要添加應用程序圖標,我需要通過 OAuth 驗證過程,這會詢問很多我目前沒有的數據,因為我只是開始開發我的應用程序,請幫助我已經嘗試解決這個問題 48 小時了。
因為至少在我將它上傳到 Play 商店之前它是有效的
似乎 Google Play 商店正在簽署您的應用程序,而不是您,因此 Firebase 檢測到不同的簽名密鑰,並阻止身份驗證。 重新簽名應用程序是Google Play 商店的一項功能,而阻止通過簽名您尚未驗證的密鑰簽名的應用程序進行 Firebase 身份驗證是一項Firebase 功能。
轉到 Google Play Store Console → 設置 → 應用簽名 → App signing key certificate
,復制 SHA-1 證書指紋。
然后轉到Firebase 控制台→ 項目設置 → 您的應用程序 → 添加指紋 → 並粘貼SHA1 。
告訴 Firebase 接受由 Google Play 商店處理的密鑰簽名的應用生成的身份驗證請求。 它以前只接受來自本地簽名應用程序簽名的應用程序的請求,其中密鑰存儲在您的計算機上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.