java.io.IOException: FIS_AUTH_ERROR en Android Firebase

6 minutos de lectura

Avatar de usuario de Aykut Uludağ
Aykut Uludağ

Recibo un error de seguimiento con los servicios de Firebase.

 E/FirebaseInstanceId: Topic sync or token retrieval failed on hard failure exceptions: FIS_AUTH_ERROR. Won't retry the operation.
 D/AndroidRuntime: Shutting down VM
    com.google.android.gms.tasks.RuntimeExecutionException: java.io.IOException: FIS_AUTH_ERROR
        at com.google.android.gms.tasks.zzu.getResult(Unknown Source:15)
        at com.myApp.MainActivity$2.onComplete(MainActivity.java:349)
        at com.google.android.gms.tasks.zzj.run(Unknown Source:4)
        at android.os.Handler.handleCallback(Handler.java:883)
        at android.os.Handler.dispatchMessage(Handler.java:100)
        at android.os.Looper.loop(Looper.java:237)
        at android.app.ActivityThread.main(ActivityThread.java:7804)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1068)
     Caused by: java.io.IOException: FIS_AUTH_ERROR
        at com.google.firebase.iid.zzs.zza(com.google.firebase:firebase-iid@@20.1.0:82)
        at com.google.firebase.iid.zzs.zza(com.google.firebase:firebase-iid@@20.1.0:96)
        at com.google.firebase.iid.zzx.then(com.google.firebase:firebase-iid@@20.1.0:4)
        at com.google.android.gms.tasks.zzd.run(Unknown Source:5)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:919)

Aquí está la parte del código donde ocurre el bloqueo:

        FirebaseInstanceId.getInstance().getInstanceId().addOnCompleteListener(new OnCompleteListener<InstanceIdResult>() {
            @Override
            public void onComplete(@NonNull Task<InstanceIdResult> task) {
                if (task.getResult() != null && task.isSuccessful()) {
                    // Get new Instance ID token
                    firebaseToken = task.getResult().getToken();
                    prefs.edit().putString("firebaseToken", firebaseToken).apply();
                    registerToken();
                }
            }
        });

El error ocurre en onComplete. Aquí están las dependencias de firebase que uso:

    // FIREBASE
implementation 'com.google.firebase:firebase-analytics:17.2.3'
implementation 'com.google.firebase:firebase-messaging:20.1.2'
implementation 'com.google.firebase:firebase-appindexing:19.1.0'
implementation 'com.google.firebase:firebase-ads:19.0.0'
implementation 'com.google.firebase:firebase-crashlytics:17.0.0-beta01'

encontré este problema en Github relacionado con mi bloqueo, pero no hay una solución concluyente en absoluto. ¿Alguien ha encontrado este tipo de problema? Gracias por adelantado.

Nota: No uso Flutter, sin embargo, el error también ocurre sin flutter. El dispositivo es Samsung A51 con Android 10.

Nota 2: Firebase eliminó firebase-core. El problema puede estar relacionado con eso.ingrese la descripción de la imagen aquí

  • Si tiene un informe de error, comuníquese con el soporte de Firebase con los detalles. support.google.com/firebase/contact/support

    –Doug Stevenson

    15 de marzo de 2020 a las 23:16

  • No estoy seguro de que sea el error o mi error. No creo que sea mi error. Acabo de actualizar las dependencias de Firebase y la aplicación comenzó a fallar. Ambas versiones de depuración y lanzamiento. Gracias a dios no lo solté. Normalmente, funcionó perfectamente antes de actualizar gradle.

    – Aykut Uludağ

    15 de marzo de 2020 a las 23:18


  • Si no tiene código para mostrar que reproduzca el problema, entonces no hay nada que podamos hacer. El soporte de Firebase puede al menos recopilar sus datos e intentar trabajar para encontrar una solución.

    –Doug Stevenson

    15 de marzo de 2020 a las 23:19

  • Ya agregué código. Estoy tratando de obtener el token de base de fuego en mi MainActivity y la aplicación falla. Hasta que actualicé las dependencias de Firebase, funcionó perfectamente. Se produce un bloqueo en la pieza onComplete. Sospecho que el bloqueo está relacionado con firebase-core. Firebase lo eliminó, por eso actualizo las dependencias.

    – Aykut Uludağ

    15 de marzo de 2020 a las 23:21


  • Bien, encontré una solución y la publiqué. Hay algún tipo de error en las versiones más nuevas de firebase-messaging.

    – Aykut Uludağ

    15 de marzo de 2020 a las 23:29


  • Esto funcionó: com.google.firebase:firebase-messaging:20.1.0 Esto no funcionó hasta ahora: com.google.firebase:firebase-messaging:20.1.5

    – Tío guay

    12 de abril de 2020 a las 19:48


  • Funciona de maravilla. Solo una nota, la ApiKey mencionado en la respuesta es Web API key desde la consola

    – Varun Barvé

    6 mayo 2020 a las 8:40


  • también verifique su paquete SHA-1 en console.developers.google.com/apis/credentials

    – Guilherme Simão Couto

    15 de mayo de 2020 a las 13:38

  • Esto parece derrotar todo el propósito de google-services.json, ¿no es así? No configuro FirebaseOptions manualmente, porque json debería hacerlo por mí.

    – Bruce Wayne

    15 de junio de 2020 a las 11:11

  • Además, agregar SHA-1 no funciona, Firebase parece una locura con sus actualizaciones.

    – Vitalii Movchan

    5 de agosto de 2020 a las 15:44

  • El problema no está relacionado con eso. Estoy usando Firebase desde que Google lo anunció. Ya arreglé el problema al degradar la versión de la biblioteca. Por favor verifique a continuación. Además, cuando descarga google-services.json, firebase otorga estos permisos automáticamente.

    – Aykut Uludağ

    26 de marzo de 2020 a las 23:37


  • @AykutUludağ: Es cierto que Firebase establece estos permisos automáticamente para los nuevos proyectos de Firebase, pero si los permisos han cambiado, Firebase no los actualizará después de la descarga. google-services.json archivo de configuración. Por lo tanto, aunque es poco probable que sea el problema, no está de más verificar si las API mencionadas están habilitadas y en la lista blanca.

    – Andreas Rayo Kniep

    28 de abril de 2020 a las 16:17

  • Es posible que también deba agregar Identity Toolkit API permiso también

    – Ambrosio Bako

    5 mayo 2020 a las 18:56


  • Supongo que estoy un poco perdido aquí: una vez que llego a la página de credenciales y selecciono mi cuenta de servicio, ¿cómo veo el acceso a la API o agrego más? Solo veo un botón de “informe de política” roto y capacidades para ver y editar usuarios y roles adjuntos a la cuenta.

    – TahoeWolverine

    6 de enero de 2021 a las 17:17

  • No tengo ninguna restricción y sigo recibiendo este error. Debería límite la clave de las restricciones anteriores?

    – rtsketo

    25 de junio de 2021 a las 6:16

  • ¡Guau! Fue esto para mí… Estoy muy sorprendido… ¿Esto debe ser un error directo de Google cuando están generando google-services.json?

    –James McGlone

    9 de junio de 2021 a las 15:47

  • Hombre, ¡realmente me salvaste el día! Este error es súper extraño y perdí mucho tiempo tratando de encontrar la solución. ¡Gracias!

    –Anton Derevyanko

    9 dic 2021 a las 16:21

  • debería configurar la credencial en console.cloud… también? solo intento esto, resuelvo la excepción io pero aún no funciona en la autenticación de base de fuego

    –Zainal Fahrudin

    11 de diciembre de 2021 a las 4:14

  • Extraño me pasó a mí también. Siempre había pensado que el json descargado de firebase sería el más confiable, ¡pero aparentemente no!

    – hackerl33t

    28 de enero a las 12:36


  • Luché con este problema durante semanas, ¡realmente me salvaste el día!

    – José

    12 de febrero a las 6:02

  • Pero… lo busca en el directorio de la aplicación: \

    – rtsketo

    25 de junio de 2021 a las 6:50

  • Pero… lo busca en el directorio de la aplicación: \

    – rtsketo

    25 de junio de 2021 a las 6:50

¿Ha sido útil esta solución?