google gms common apiexception android firebase-authentication

com google android gms common api apiexception 12500



¿Por qué obtengo com.google.android.gms.common.api.ApiException: 10:? (4)

private void handleSignInResult(Task<GoogleSignInAccount> completedTask) { try { GoogleSignInAccount account = completedTask.getResult(ApiException.class); //exception is here // Signed in successfully, show authenticated UI. System.out.println("google token ---> " + account.getIdToken()); } catch (ApiException e) { // The ApiException status code indicates the detailed failure reason. // Please refer to the GoogleSignInStatusCodes class reference for more information about this error. e.printStackTrace(); } }


El código de error 10 de ApiException es un error del desarrollador. Obtienes este error cuando tu aplicación firebase no está bien configurada. Un caso seguro es cuando no proporciona la huella digital SHA1 para su aplicación de Android cuando desea usar la autenticación Firebase con Google Signin. (Es un requisito para Google Signin). Así que proporcione la huella digital SHA1, descargue el archivo de configuración google-services.json en su carpeta de aplicaciones y compile. Usted debe ser bueno para ir.

El inicio de sesión de Google se configura automáticamente en sus aplicaciones web y iOS conectadas. Para configurar el inicio de sesión de Google para sus aplicaciones de Android, debe agregar la huella digital SHA1 para cada aplicación en la Configuración del proyecto.

Mira esto Códigos de error de estado comunes


Este código de estado significa que está proporcionando un ID de cliente de servidor desconocido. En https://console.developers.google.com/apis/credentials en su proyecto, es posible que deba generar: Id. De cliente OAuth -> Aplicación web y usar esta id. De cliente de aplicación web en su aplicación Android.


Si eliminas esta línea funcionará:

System.out.println("google token ---> " + account.getIdToken());

Esto se debe a que no tiene la solicitud para el idToken:

.requestIdToken(getString(R.string.google_app_id))

donde app_id tendrá el valor de "Id. de cliente OAuth -> Aplicación web"


Si está utilizando Firebase y prueba la debug app :

1. Primero, obtenga su clave de depuración SHA-1 :

  1. Haga clic en Gradle (en el panel lateral derecho, verá la barra de Gradle)
  2. Haga clic en Tasks
  3. Haga clic en Android
  4. Haga doble clic en el signingReport de signingReport (obtendrá SHA-1 y MD5 )

2. Agregar nuevas credenciales a la consola de API

  1. Vaya aquí https://console.developers.google.com/apis/credentials
  2. Crear nuevo OAuth Client ID
  3. Nombre: Android client (for debug) (ejemplo)
  4. Huella digital del certificado de firma: copie y pegue su clave de depuración SHA-1
  5. Ponga el nombre de su paquete luego guardado

3. Agregue su clave a su proyecto Firebase :

  1. Vaya a Project settings -> SHA certificate fingerprints -> Agregue la clave SHA-1 de la aplicación de depuración.

  2. Luego puedes actualizar tu archivo google-services.json en tu proyecto de Android.

Funciona para mí.