Solucionar problemas con las opciones de inicialización

Si inicializas tu app sin un conjunto válido de opciones de Firebase, los usuarios nuevos de tu aplicación experimentarán problemas graves.

Las opciones de Firebase son un conjunto de parámetros que los servicios requieren para comunicarse correctamente con las API del servidor de Firebase y asociar los datos de los clientes con tu proyecto y aplicación de Firebase. Los servicios de Firebase dependen de que las opciones válidas de Firebase estén disponibles desde la biblioteca principal y común de la plataforma que se creó durante su inicialización.

Aunque los distintos servicios de Firebase requieren diferentes opciones de Firebase para funcionar correctamente, todos requieren las siguientes opciones:

  • Clave de API: Ten en cuenta que esta no es una clave de servidor de FCM. Consulta Claves de servidor de FCM.
    Valor de ejemplo: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
  • ID del proyecto: El valor de ejemplo es myapp-project-123.
  • ID de la aplicación (“AppID”): Identificador único de la app cuyo formato depende de la plataforma:
    • Para Android: mobilesdk_app_idTen en cuenta que este no es un nombre de paquete de Android.
      Valor de ejemplo: 1:1234567890:android:321abc456def7890
    • Para iOS+: GOOGLE_APP_ID (ten en cuenta que este no es un ID del paquete de Apple).
      Valor de ejemplo: 1:1234567890:ios:321abc456def7890

Soluciona problemas de apps para Android

Para mejorar la seguridad, el SDK de Firebase se actualizó el 27 de febrero y, luego, reemplazó el servicio de ID de instancia de Firebase por una dependencia en la API de instalaciones de Firebase.

Las instalaciones de Firebase aplican la existencia y la validez de la clave de API de las opciones obligatorias de Firebase, el ID del proyecto y el ID de aplicación para asociar los datos de clientes con tu proyecto de Firebase. Consulta FirebaseOptions para obtener más información.

Firebase Cloud Messaging (FCM) con el ID de instancia de Firebase (IID)

Si los usuarios nuevos de tu app tienen problemas con FCM, es posible que estés inicializando Firebase sin el conjunto requerido de opciones de Firebase.

Es posible que tu aplicación use un archivo de configuración google-services.json incompleto o erróneo, o que la app inicialice Firebase de manera programática sin el conjunto completo de opciones requeridas de Firebase.

Como resultado, los servicios de Firebase, como Firebase Cloud Messaging, dejarán de funcionar para los usuarios finales que hayan instalado tu app después del lanzamiento con los SDK de Firebase actualizados. Además, las solicitudes erróneas repetidas a Firebase pueden ralentizar la experiencia del usuario final de tu app.

¿Qué debo hacer?

Para solucionar los servicios de Firebase que no funcionan correctamente en tus aplicaciones, haz lo siguiente:

  1. Para actualizar tu aplicación, inicializa Firebase con una clave de API de tu proyecto, un ID del proyecto y un ID de aplicación (mobilesdk_app_id o “AppID”) válidos.
  2. Lanza una nueva versión de la app en Play Store.

Soluciona problemas con apps para Apple

Para mejorar la seguridad, el SDK de Firebase se actualizó el 14 de enero y, luego, se reemplazó el servicio de ID de instancia de Firebase por una dependencia en la API de Firebase Installations.

Las instalaciones de Firebase aplican la existencia y la validez de la clave de API de las opciones obligatorias de Firebase, el ID del proyecto y el ID de aplicación para asociar los datos de clientes con tu proyecto de Firebase. Consulta FIROptions para obtener más información.

Firebase Cloud Messaging (FCM) con el ID de instancia de Firebase (IID)

Si los usuarios nuevos de tu app tienen problemas con FCM, es posible que estés inicializando Firebase sin el conjunto requerido de opciones de Firebase.

Es posible que tu aplicación use un archivo de configuración GoogleService-Info.plist incompleto o no válido, o que la app inicialice Firebase de manera programática sin el conjunto completo de opciones requeridas de Firebase.

Como resultado, los servicios de Firebase, como Firebase Cloud Messaging, dejarán de funcionar para los usuarios finales que hayan instalado tu app después del lanzamiento con los SDK de Firebase actualizados. Además, las solicitudes erróneas repetidas a Firebase pueden ralentizar la experiencia del usuario final de tu app.

¿Qué debo hacer?

Para solucionar los servicios de Firebase que no funcionan correctamente en tus aplicaciones, haz lo siguiente:

  1. Para actualizar tu aplicación, inicializa Firebase con una clave de API de tu proyecto, un ID del proyecto y un ID de aplicación (GOOGLE_APP_ID o “AppID”) válidos.
    1. Proceso de inicialización predeterminado con un archivo de configuración de Firebase: Descarga el archivo de configuración GoogleService-Info.plist desde Firebase console y, luego, reemplaza el archivo existente en la app.
    2. Inicialización programática con un objeto FIROptions: Descarga el archivo de configuración GoogleService-Info.plist desde Firebase console para encontrar tu ID del proyecto, ID de aplicación y clave de API y, luego, actualiza estos valores en el objeto FIROptions de la app.
  2. Lanza una nueva versión de la app en App Store.

Claves de servidor de FCM

Si tu app usa una clave de servidor de FCM en lugar de una clave de API de Cloud, esto podría causar una vulnerabilidad de seguridad en caso de que uses la misma clave de servidor de FCM para enviar notificaciones push a través de FCM. En este caso, te recomendamos que revises cómo tu servidor autentica solicitudes de envío a FCM.

Ten en cuenta que las claves de servidor de FCM (que no son las mismas que las claves de APIs de Firebase o Cloud) no se deben incluir en las aplicaciones, ya que se puede abusar de ellas para enviar notificaciones push en nombre de tu proyecto.