Ya existe un cliente de OAuth2 para este nombre de paquete y SHA-1 aparece en otro proyecto

¿Por qué aparece este mensaje?

Este error aparece si detectamos que otro proyecto de Firebase o Google Cloud contiene un ID de cliente de OAuth 2.0 con el nombre de paquete y SHA-1 que especificaste. Cuando agregas Firebase a una aplicación de Android en Firebase console, tratamos de generar un ID de cliente de Google OAuth 2.0 para tu app, que se utiliza para autenticarla con algunas API de Google, como App Invites o la API de Drive. Por razones de seguridad, cada sincronización de un nombre de paquete y una huella digital de SHA-1 que se usaron para crear un ID de cliente de OAuth 2.0 debe ser única para todos los proyectos de Firebase y Google Cloud.

¿Cómo afecta esto a mi aplicación?

Actualmente, existen dos elementos de Firebase que exigen configurar el nombre de paquete y SHA-1 de tus apps de Android:

  • Invites: No funciona si no se indica un SHA-1. Por ahora, no hay manera de usar un SHA-1 de otro proyecto.
  • Authentication: Para usar Google como un proveedor de autenticación, debes incluir de forma manual en la lista blanca el ID de cliente de tu proyecto existente en la configuración de Acceso.

¿Qué puedo hacer?

Si no usas Firebase Invites ni Google como tu proveedor de acceso de Firebase Auth, no tienes que realizar ninguna acción. Si utilizas alguno de estos elementos, determina cuál de las siguientes situaciones se ajusta mejor a tu caso:

Sé cuál es el proyecto de Google Cloud que contiene el ID de cliente de OAuth 2.0 en conflicto y no me importa borrar mi proyecto de Firebase o si tengo que usar Invites.
Si tu app de Firebase ya está en producción o si tienes datos de Analytics o Crash Reporting que deseas conservar, no se recomienda este enfoque.

Si acabas de crear este proyecto o no has avanzado mucho en la incorporación de Firebase a tu app, el enfoque más simple es borrar tu proyecto y, en su lugar, importar tu proyecto de Google existente. Para ello, haz lo siguiente:

  1. Borra tu proyecto de Firebase. Esta acción es permanente y borrará todos los datos asociados a tu proyecto.
  2. Dirígete a Firebase console.
  3. Haz clic en Importar proyecto de Google.
  4. Selecciona el proyecto existente que contiene el ID de cliente de OAuth 2.0 y haz clic en Agregar Firebase.
No deseo importar mi proyecto existente y no usaré Invites.

Si no puedes importar tu proyecto existente y no planeas utilizar Invites, puedes incluir manualmente en la lista blanca tu ID de cliente de OAuth 2.0 existente para usar a Google como proveedor de acceso.

En primer lugar, busca el ID de cliente de OAuth 2.0 de tu proyecto existente. Para ello, haz lo siguiente:

  1. Dirígete a la página Credenciales de Google Cloud Console. Si el proyecto que contiene el ID de cliente de OAuth 2.0 no se abre automáticamente, selecciónalo desde el menú desplegable en la esquina superior derecha de la página.
  2. En la sección ID de cliente de OAuth 2.0, ubica el nombre de cliente que contiene el nombre de paquete y SHA-1 que usaste para tu proyecto de Firebase. Si no sabes cuál es el correcto, haz clic en el nombre del cliente para ver los detalles.
  3. Cuando hayas encontrado el nombre de cliente correcto, copia el valor completo en la columna ID de cliente.

A continuación, incluye este ID de cliente en la lista blanca de Google como un proveedor de acceso. Para ello, haz lo siguiente:

  1. Dirígete a Firebase console y selecciona tu proyecto.
  2. Selecciona Auth en el menú a la izquierda.
  3. Selecciona la pestaña Método de acceso.
  4. En la página Método de acceso, haz clic en Google y selecciona la tarjeta Proveedores de acceso.
  5. Expande la opción Incluir en la lista blanca los ID de cliente de proyectos externos.
  6. Pega el ID de cliente de Cloud Console en el campo de texto y haz clic en Agregar.
No sé cuál proyecto contiene el ID de cliente de OAuth 2.0 en conflicto.

Si no sabes cuál proyecto contiene el ID de cliente de OAuth 2.0 en conflicto, prueba con estos pasos para encontrarlo:

  1. Dirígete a la página Credenciales de Google Cloud Console.
  2. En la sección ID de cliente de OAuth 2.0, haz clic en el nombre del cliente para ver el nombre de paquete y SHA-1 utilizados para crear el ID de cliente. Repite el proceso hasta que encuentres el nombre de cliente correcto o lo hayas intentado con todos los clientes.

Si no encuentras un nombre de cliente que contenga el nombre de paquete y SHA-1 coincidentes, selecciona otro proyecto del menú desplegable en la esquina superior derecha de la página y vuelve a realizar el procedimiento.

En algunos casos, el cliente de OAuth 2.0 puede estar en un proyecto del que no eres propietario. Si no puedes encontrar el proyecto en conflicto, comunícate con el servicio de asistencia de Firebase y proporciona la huella digital de SHA-1 y el nombre del paquete en conflicto.

¿Te resultó útil esto?
¿Cómo podemos mejorarla?