firebase / firebase-android-sdk

Firebase Android SDK
https://firebase.google.com
Apache License 2.0
2.24k stars 566 forks source link

Firebase AUTHENTICATION_FAILED on some devices #1286

Closed jehadmashhour closed 2 years ago

jehadmashhour commented 4 years ago

I use the Firebase remote config SDK , i have noted that on some devices (nearly 15 users) that the Firebase SDKs not working .

The error message is : Failed to get Firebase Instance ID token for fetch

The log shows the following error :

com.google.firebase.remoteconfig.FirebaseRemoteConfigClientException: Failed to get Firebase Instance ID token for fetch. at c.i.c.r.a.m.a(com.google.firebase:firebase-config@@19.1.1:30) at c.i.c.r.a.j.then(Unknown Source:4) at com.google.android.gms.tasks.zzf.run(Unknown Source:3) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at java.lang.Thread.run(Thread.java:784) Caused by: java.io.IOException: AUTHENTICATION_FAILED at c.i.c.m.P.then(com.google.firebase:firebase-iid@@20.0.2:7) at com.google.android.gms.tasks.zzd.run(Unknown Source:7) ... 3 more

Notes :

Some of devices have the same issue -> Huawei DUB-LX1 , HUAWEI JKM-LX1 , Samsung SM-A750F , Samsung SM-J700H

Let me know if you need my google api key .

google-oss-bot commented 4 years ago

I found a few problems with this issue:

chong-shao commented 4 years ago

Hi @jehadmashhour , it would be better if you can report this issue by filing a Firebase Support ticket https://firebase.google.com/support, from there it will be easier for you to share your account information and credentials

jaanmurumets-sk commented 4 years ago

We have reported issue to google https://issuetracker.google.com/issues/143413382 and there is acknowledge by Google of problem:

"We got information from Firebase support that this AUTHENTICATION_FAILED error is caused by GPS (Google Play Services) but fix date is not clear yet."

pnehren commented 4 years ago

We are also affected with a custom device without Play Services.

arbutler commented 4 years ago

I'm still seeing the AUTHENTICATION_FAILED failure on a Samsung S8 device using the latest google play api's according to the release notes:

build.gradle (app level) dependencies { ... implementation 'com.google.firebase:firebase-iid:20.1.2' implementation 'com.google.firebase:firebase-messaging:20.1.3' implementation 'com.google.firebase:firebase-bom:25.1.1' implementation 'com.google.android.gms:play-services-auth-api-phone:17.4.0' implementation 'com.google.android.gms:play-services-base:17.2.0' implementation 'com.google.android.gms:play-services-basement:17.2.0' implementation 'com.google.android.gms:play-services-tasks:17.0.1' ... }

Log: ... 03-20 14:36:53.917 E/FirebaseInstanceId(18116): Topic sync or token retrieval failed on hard failure exceptions: AUTHENTICATION_FAILED. Won't retry the operation. 03-20 14:36:53.919 D/MainActivity(18116): getInstanceId failed 03-20 14:36:53.919 D/MainActivity(18116): java.io.IOException: AUTHENTICATION_FAILED 03-20 14:36:53.919 D/MainActivity(18116): at com.google.firebase.iid.zzs.zza(com.google.firebase:firebase-iid@@20.1.2:82) 03-20 14:36:53.919 D/MainActivity(18116): at com.google.firebase.iid.zzs.zza(com.google.firebase:firebase-iid@@20.1.2:96) 03-20 14:36:53.919 D/MainActivity(18116): at com.google.firebase.iid.zzx.then(com.google.firebase:firebase-iid@@20.1.2:4) 03-20 14:36:53.919 D/MainActivity(18116): at com.google.android.gms.tasks.zze.run(com.google.android.gms:play-services-tasks@@17.0.1:5) 03-20 14:36:53.919 D/MainActivity(18116): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 03-20 14:36:53.919 D/MainActivity(18116): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 03-20 14:36:53.919 D/MainActivity(18116): at java.lang.Thread.run(Thread.java:762) ...

ckurban commented 4 years ago

Any update in this issue as we are facing the failure in our solution?

jehadmashhour commented 4 years ago

I'm still having the same issue , a one user who has the same issue said to me that he did reset device factory and the firebase issue is resolved !! , incredible .

Please any help , we think the issue is related to the users devices , but we don't know exactly what is the reason .

pnehren commented 4 years ago

I think that they stopped supporting devices with no or old versions of play services...on my device without play services firebase-config stopped working with versions higher 19.1.0. Devices with play services or emulators have no problems...

Sad that there is no information about that.

jehadmashhour commented 4 years ago

I was think that , but after adding some logs to check the google play services is installed or not , and what is the version , I have noticed that these devices also have the same issue with the latest version.

In addition , I have contacted a user who have the same issue and he said that his device has the latest google play services , but no avail .

Why the issue is resolved by doing reset device factory !!!!

jehadmashhour commented 4 years ago

Any update in this issue as we are facing the failure in our solution?

arbutler commented 4 years ago

Tried downgrading the libraries in my app build.gradle as suggested here and token retrieval in the app succeeded on a Samsung S8 device for one attempt:

build.gradle (app level) dependencies { ... implementation 'com.google.firebase:firebase-iid:20.0.2' implementation 'com.google.firebase:firebase-messaging:20.1.0' ... }

After re-installing the app, I'm seeing the AUTHENTICATION_FAILED failure again which I reported previously. After seeing the failure on firebase-messaging:20.1.0 I retried with the latest versions of these APIs here and found that token retrieval succeeded for one attempt and then again I'm seeing the AUTHENTICATION_FAILED failure which I reported previously.

pablo-leite-playkids commented 4 years ago

I'm facing the same issue here. (Google Pixel 1st Gen. Android 10) It fails on the first run of the app, but succeeds on other runs.

Gradle dependencies: implementation 'com.google.firebase:firebase-messaging:20.1.5'

downgrading to implementation 'com.google.firebase:firebase-messaging:20.1.0' Seems to fix the problem.

seemacalibrecode commented 4 years ago

Hi,

We are facing similar issues on our App and this is blocking usage of App on many recent devices, including Google Pixel with latest version of Google play services on it

Appreciate if we could have an ETA on this fix

Best Regards, Seema

thameurr commented 4 years ago

any update ?

andirayo commented 4 years ago

A few of the errors reported in this issue, particularly @pablo-leite-playkids, might be related to a new Firebase infrastructure service which was introduced in FirebaseMessaging v20.1.1.

Firebase Android SDK updates on February 27 (M65) and afterwards introduced the Firebase Installations SDK which comes with a dependency on the Firebase Installations API. \ Firebase Installations requires valid Firebase options API key, project ID, and application ID (a.k.a. "appId") in order to successfully communicate with Firebase servers.

Errors during communication with the Firebase Installations API indicate invalid Firebase options or misconfigurations regarding the API key used in your application.

Only those end-users are affected that installed your application after an update to the latest versions of Firebase SDKs, which might explain why only some devices are affected.

To mitigate the issue


Just for clarification

Most of the errors reported in this issue are probably not related to the new infrastructure FirebaseInstallations. The reason is that the SDK versions reported in some of the stack-traces (e.g. firebase-iid@@20.0.2:7, firebase-messaging:20.1.0) do not use FirebaseInstallations and thus this issues definitely also exists separately.

andirayo commented 4 years ago

Closing this since there was no more update for over 3 weeks. Please feel free to reopen if this issue persists for you!

ghostwan commented 4 years ago

I have the same issue on Huawei phones, Samsung or Asus. And I have more and more complaints about it. We need FCM for our app to work.

What information can we give you to help solves this issue ?

jaanmurumets-sk commented 4 years ago

We updated our app to the Firebase SDK -s and hoped it helps but we are seeing same numbers with our newest app. Top10 devices receiving AUTHENTICATION_FAILED in our app samsung SM-A405FN samsung SM-A705FN
samsung SM-A505FN
samsung SM-A105FN
samsung SM-A202F
samsung SM-A530F
samsung SM-G950F
samsung SM-A750FN samsung SM-J415FN
HUAWEI ATU-L21

ghostwan commented 4 years ago

@andirayo @jehadmashhour would it be possible to reopen this issue, we still have it?

andirayo commented 4 years ago

@jehadmashhour: Do you still experience this issue? \ If not, can you please share with us what fixed the issue for you?

@ghostwan , @jaanmurumets-sk: \ I reopened this issue, but if you are experiencing a different issue than @jehadmashhour I recommend to open a new issue and assign it to me! \ Here are questions that may help us analyze your issue:


CURL command for (Q3):

api_key=<The api_key/current_key from your google-services.json config file>
project_identifier=<The project_id from your google-services.json config file>
app_id=<The mobilesdk_app_id from your google-services.json config file>

curl -H "content-type: application/json" -d "{appId: '$app_id', sdkVersion: 't:1.1286'}" https://firebaseinstallations.googleapis.com/v1/projects/$project_identifier/installations/?key=$api_key
mtrezza commented 4 years ago

I can confirm that the issue was a key restriction that did not include the Firebase Installations API. The solution was to add the API to the allowed APIs for the restricted key as described here.

To highlight @andirayo's comprehensive comments, following these should solve the issue:

ghostwan commented 4 years ago

Hello @andirayo

Q1) Can you reproduce the issue locally with a fresh install (not an update/upgrade) of your application?

Unfortunately we can't reproduce this error on our dev devices, some of our client are complaining, and we retrieved error report from their devices.

Q3) If yes in (Q2): If you extract the Firebase options API key, project ID, and application ID (a.k.a. "appId") from your google-services.json config file and execute the CURL command at the bottom of this comment, what response do you see?

I replaced sensitive information (if they are) by "..."

{
  "name": "...",
  "fid": "...",
  "refreshToken": "...",
  "authToken": {
    "token":...",
    "expiresIn": "604800s"
  }
}

Q4) If successful response in (Q3): From your Android logcat, can you find the error message and the surrounding errors related to the Instance ID / FCM token fetch? The error message might sound similar to "Failed to get Firebase Instance ID token" / "Failed to register".

Because we can't reproduce on our side the only information we have (GPDR compliant) is

 1591723476250,09/06/2020 - 19:24:36:25,ERROR,Connection,FCM fail to retrieve the token: java.io.IOException: AUTHENTICATION_FAILED
1591723476253,09/06/2020 - 19:24:36:25,ERROR,Connection,error to format 9999

I have to see if we can get more information from them.

We didn't get all error report from all our clients that could have the same issue yet, but for now the one we got have the same particularity: they have HUAWEI - ELS-NX9 with Android 10. I thought first it was linked to Huawei ban but after trying on a AOSP emulator the error I got when the device is not GMS was MISSING_INSTANCEID_SERVICE

I am waiting to get more information from other clients, especially not Huawei owner, we have complaints from Samsung Galaxy S9, Samsung SM-T865, Asus rog phone, Samsung galaxy A8, Samsung Galaxy A50, Caterpillar S31 users and Huwaei P40 Pro and lite users.

andirayo commented 4 years ago

From @jehadmashhour original post, I conclude that firebase-instanceid is unable to successfully create an FCM registration token / IID token which in turn is required by Remote Config to send fetch requests.

firebase-instanceid seems to be unable to create an FCM registration token due to error AUTHENTICATION_FAILED. My initial assumption was that firebase-installations was unable to register the Firebase installation and thus firebase-instanceid was unable to get an installation auth token which is required for the FCM/IID registration request. However the last comment by @ghostwan shows that the application has all valid Firebase options and firebase-installations should be able to successfully create installation auth tokens.

@ciarand : Do you know when /register3 responds with AUTHENTICATION_FAILED? \ @ghostwan : Thanks for the shared information and thanks for trying to collect more information. Any error messages or stack traces related to the AUTHENTICATION_FAILED error might be helpful to us.

ghostwan commented 4 years ago

@andirayo I was able to retrieve the play services version of one of our client that has the issue, I don't know if it could helps : 201817037

ghostwan commented 4 years ago

@andirayo if some client which has a Huawei P40 did install the Google play services manually, could it block Firebase registration ?

jaanmurumets-sk commented 4 years ago

Q1) Can you reproduce the issue locally with a fresh install (not an update/upgrade) of your application? NO Q2) If yes in (Q1): Please take a look at my [comment on Apr 28][https://github.com//issues/1286#issuecomment-620448506]: Did you make sure that you are using valid Firebase options? Double checked and also worth mentioning it only affects small number of customers (ca 1500 occurrences in a day vs millions of app openings) so it is unlikely that this is a configuration issue (otherwise all new users should be affected). Q3) If yes in (Q2): If you extract the Firebase options API key, project ID, and application ID (a.k.a. "appId") from your google-services.json config file and execute the CURL command at the bottom of this comment, what response do you see? It works with most (90-99% perhaps) of users so configuration must be correct. It is hard to measure exactly percentage how many users are getting errors since Google provides stats only about push but not stats about getting push token. https://console.cloud.google.com/apis/dashboard Q4) If successful response in (Q3): From your Android logcat, can you find the error message and the surrounding errors related to the Instance ID / FCM token fetch? The error message might sound similar to "Failed to get Firebase Instance ID token" / "Failed to register". See below. Q5) Do you see any error or exception related to FirebaseInstanceId or FirebaseInstallations that you can share with us (complete stack traces please). See below Q6) Does the error go away if you downgrade to a version of firebase-messaging before v20.1.1 - particularly if you make sure that Gradle resolves firebase-instanceid to a version before v20.1.0? We have been using different firebase library versions and problem has not changed.

One stack trace from our older app:   10-18 06:33:33.264 E/FcmTokenManager( 1676): java.io.IOException: AUTHENTICATION_FAILED10-18 06:33:33.264 E/FcmTokenManager( 1676): at com.google.firebase.iid.av.a(Unknown Source:71)10-18 06:33:33.264 E/FcmTokenManager( 1676): at com.google.firebase.iid.av.a(Unknown Source:84)10-18 06:33:33.264 E/FcmTokenManager( 1676): at com.google.firebase.iid.aw.a(Unknown Source:4)10-18 06:33:33.264 E/FcmTokenManager( 1676): at com.google.android.gms.h.m.run(Unknown Source:5)10-18 06:33:33.264 E/FcmTokenManager( 1676): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)10-18 06:33:33.264 E/FcmTokenManager( 1676): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)10-18 06:33:33.264 E/FcmTokenManager( 1676): at java.lang.Thread.run(Thread.java:764)

At that time we used following libraries:
·         com.google.firebase:firebase-core:16.0.9
·         com.google.firebase:firebase-messaging:18.0.0
Updated to the firebase latest versions (v20x) but problem is exactly the same.

aykutuludag commented 4 years ago

Same problem in here: https://stackoverflow.com/questions/62562243/java-io-ioexception-authentication-failed-in-android-firebase

ashwinraghav commented 4 years ago

Are there folks on the thread that have tried https://github.com/firebase/firebase-android-sdk/issues/1286#issuecomment-643778402, but have not been able to fix the problem?

andirayo commented 4 years ago

@ghostwan , @jaanmurumets-sk : \ Thank you for your detailed input!

Your problems do not seem to be caused by FirebaseInstallations. \ The general error "AUTHENTICATION_FAILED on some devices" might be caused by FirebaseInstallations, but it seems that for the remaining affected developers the error is caused by another issue in FirebaseInstanceId.

Thus, the question is when does /register3 responds with AUTHENTICATION_FAILED and what could cause it? \ I will assign this issue to the Messaging / InstanceId client team.

wa1kb0y commented 4 years ago

Have same issue with AUTHENTICATION_FAILED

30.06.2020 14:30:18.881
[com.google.firebase.iid.zzu.then(com.google.firebase:firebase-iid@@20.2.0:16), com.google.android.gms.tasks.zzd.run(Unknown Source:5), java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167), java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641), com.google.android.gms.common.util.concurrent.zza.run(Unknown Source:6), java.lang.Thread.run(Thread.java:764)]
celesteking commented 3 years ago

Guys, I don't know what you were smoking there, but this really should be fixed. I'm a newbie learning flutter and went through your official guide which links to https://firebase.google.com/docs/flutter/setup?platform=android . The example shown in the latter guide produces that very error. After going through several versions of cloud_firestore: and classpath 'com.google.gms:google-services:4.3.3', I have managed to make it work.

Imagine someone not as persistent as me, they would've dumped both flutter and firebase had they encountered such an obstacle. And that's a "START UP" guide, not some advanced tech config manual.

stari4ek commented 3 years ago

I'm seeing this issue in live among small percent of users. Devices: different Sony TVs (BRAVIA 4K 2015, BRAVIA 4K GB, BRAVIA 4K GB ATV3), Panasonic GX655 (app is Android-TV only) Different locations: Aurope, Asia

On top of that all problematic installations did successfully authorized using Firebase Auth (anonymous).

One user report I've got recently shows that client was constantly getting this error since at least 1 July. Still getting this issue after cleaning app's data from system settings.

I do not see any correlations between issue and "installations with new SDK". There are a lot of users using same app version (same SDKs) without this issue. New users and 1-3-6 month users.

Non-fatal Exception: java.io.IOException: AUTHENTICATION_FAILED
       at com.google.firebase.iid.GmsRpc.handleResponse(GmsRpc.java:81)
       at com.google.firebase.iid.GmsRpc.lambda$extractResponseWhenComplete$0$GmsRpc(GmsRpc.java:91)
       at com.google.firebase.iid.GmsRpc$$Lambda$0.then(GmsRpc.java:6)
       at com.google.android.gms.tasks.zze.run(zze.java:5)
       at com.google.firebase.iid.FirebaseIidExecutors$$Lambda$0.execute(FirebaseIidExecutors.java)
       at com.google.android.gms.tasks.zzc.zza(zzc.java:6)
       at com.google.android.gms.tasks.zzr.zza(zzr.java:19)
       at com.google.android.gms.tasks.zzu.zza(zzu.java:104)
       at com.google.android.gms.tasks.zze.run(zze.java:15)
       at com.google.firebase.iid.FirebaseIidExecutors$$Lambda$0.execute(FirebaseIidExecutors.java)
       at com.google.android.gms.tasks.zzc.zza(zzc.java:6)
       at com.google.android.gms.tasks.zzr.zza(zzr.java:19)
       at com.google.android.gms.tasks.zzu.zza(zzu.java:104)
       at com.google.android.gms.tasks.TaskCompletionSource.setResult(TaskCompletionSource.java:8)
       at com.google.firebase.iid.MessengerIpcClient$Request.finish(MessengerIpcClient.java:20)
       at com.google.firebase.iid.MessengerIpcClient$TwoWayRequest.handleResponseInternal(MessengerIpcClient.java:7)
       at com.google.firebase.iid.MessengerIpcClient$Request.handleResponse(MessengerIpcClient.java:29)
       at com.google.firebase.iid.MessengerIpcClient$Connection.receivedResponse(MessengerIpcClient.java:42)
       at com.google.firebase.iid.MessengerIpcClient$Connection$$Lambda$0.handleMessage(MessengerIpcClient.java:14)
       at android.os.Handler.dispatchMessage(Handler.java:101)
       at com.google.android.gms.internal.firebase-iid.zze.dispatchMessageTraced(zze.java:21)
       at com.google.android.gms.internal.firebase-iid.zze.dispatchMessage(zze.java:11)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6541)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

Build:

classpath 'com.google.gms:google-services:4.3.3'

    implementation 'com.google.firebase:firebase-analytics:17.5.0'
    implementation 'com.google.firebase:firebase-perf:19.0.8'
    implementation 'com.google.firebase:firebase-config:19.2.0'
    implementation 'com.google.firebase:firebase-messaging:20.2.4'
    implementation 'com.google.firebase:firebase-functions:19.0.2'
    implementation 'com.google.firebase:firebase-auth:19.3.2'
    implementation 'com.google.firebase:firebase-firestore:21.5.0'
    implementation 'com.google.firebase:firebase-storage:19.1.1'

    implementation 'com.google.firebase:firebase-inappmessaging:19.1.0'
    implementation 'com.google.firebase:firebase-inappmessaging-display:19.1.0'

    implementation 'com.google.firebase:firebase-crashlytics:17.2.1'
stari4ek commented 3 years ago

I've got confirmation from user that factory-resetting device (Sony TV) solves this issue

huSSooxXx commented 3 years ago

I can get firebase token after than android updates and google play services update

adamseoul commented 3 years ago

It is something to do with the initialisation of the phone/device, maybe a duplicate or unwritten "android_id" You need to generate a new Android Unique ID, so it is not feasible for app end users. I worked this out after getting tired of factory resetting devices that run my 1000's of units in the field Android hardware/software product.

adb shell content query --uri content://settings/secure --where "name=\'android_id\'"

adb shell content delete --uri content://settings/secure --where "name=\'android_id\'"

adb shell content insert --uri content://settings/secure --bind name:s:android_id --bind value:s:7355de1e9e9670c5
bienieklucas commented 3 years ago

Same issue with AUTHENTICATION_FAILED.

Non-fatal Exception: java.io.IOException: AUTHENTICATION_FAILED
       at com.google.firebase.iid.zzu.then(zzu.java:16)
       at com.google.android.gms.tasks.zze.run(zze.java:5)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
       at com.google.android.gms.common.util.concurrent.zza.run(zza.java:6)
       at java.lang.Thread.run(Thread.java:764)

Dependencies: implementation "com.google.firebase:firebase-messaging:20.2.0" implementation "com.google.android.gms:play-services-gcm:16.1.0" classpath "com.google.gms:google-services:4.3.3"

harshmittal2810 commented 3 years ago

I am using firebase-bom 26.1.1 and getting the same issues.


FIS_AUTH_ERROR
com.google.firebase.iid.GmsRpc.handleResponse (GmsRpc.java:84)
com.google.firebase.iid.GmsRpc.lambda$extractResponseWhenComplete$0$GmsRpc (GmsRpc.java:94)
com.google.firebase.iid.GmsRpc$$Lambda$0.then (GmsRpc.java:7)
com.google.android.gms.tasks.zze.run (zze.java:5)
com.google.firebase.iid.FirebaseIidExecutors$$Lambda$0.execute (FirebaseIidExecutors.java)
com.google.android.gms.tasks.zzc.zza (zzc.java:6)
com.google.android.gms.tasks.zzq.zza (zzq.java:19)
com.google.android.gms.tasks.zzu.zza (zzu.java:104)
com.google.android.gms.tasks.zze.run (zze.java:15)
com.google.android.gms.cloudmessaging.zzz.execute (zzz.java)
com.google.android.gms.tasks.zzc.zza (zzc.java:6)
com.google.android.gms.tasks.zzq.zza (zzq.java:19)
com.google.android.gms.tasks.zzu.zza (zzu.java:104)
com.google.android.gms.tasks.TaskCompletionSource.setResult (TaskCompletionSource.java:8)
com.google.android.gms.cloudmessaging.zzq.zza (zzq.java:9)
com.google.android.gms.cloudmessaging.zzs.zza (zzs.java:7)
com.google.android.gms.cloudmessaging.zzf.zza (zzf.java:45)
com.google.android.gms.cloudmessaging.zzi.handleMessage (zzi.java:15)
android.os.Handler.dispatchMessage (Handler.java:103)
android.os.Looper.loop (Looper.java:214)
android.app.ActivityThread.main (ActivityThread.java:7397)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:492)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:935)
cyhbench commented 3 years ago

I am using firebase-bom 26.1.1 and getting the same issues.

FIS_AUTH_ERROR
com.google.firebase.iid.GmsRpc.handleResponse (GmsRpc.java:84)
com.google.firebase.iid.GmsRpc.lambda$extractResponseWhenComplete$0$GmsRpc (GmsRpc.java:94)
com.google.firebase.iid.GmsRpc$$Lambda$0.then (GmsRpc.java:7)
com.google.android.gms.tasks.zze.run (zze.java:5)
com.google.firebase.iid.FirebaseIidExecutors$$Lambda$0.execute (FirebaseIidExecutors.java)
com.google.android.gms.tasks.zzc.zza (zzc.java:6)
com.google.android.gms.tasks.zzq.zza (zzq.java:19)
com.google.android.gms.tasks.zzu.zza (zzu.java:104)
com.google.android.gms.tasks.zze.run (zze.java:15)
com.google.android.gms.cloudmessaging.zzz.execute (zzz.java)
com.google.android.gms.tasks.zzc.zza (zzc.java:6)
com.google.android.gms.tasks.zzq.zza (zzq.java:19)
com.google.android.gms.tasks.zzu.zza (zzu.java:104)
com.google.android.gms.tasks.TaskCompletionSource.setResult (TaskCompletionSource.java:8)
com.google.android.gms.cloudmessaging.zzq.zza (zzq.java:9)
com.google.android.gms.cloudmessaging.zzs.zza (zzs.java:7)
com.google.android.gms.cloudmessaging.zzf.zza (zzf.java:45)
com.google.android.gms.cloudmessaging.zzi.handleMessage (zzi.java:15)
android.os.Handler.dispatchMessage (Handler.java:103)
android.os.Looper.loop (Looper.java:214)
android.app.ActivityThread.main (ActivityThread.java:7397)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:492)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:935)

harshmittal2810 commented 3 years ago

I am getting error in all devices but locally debug app works fine. After pushing to play store, I am getting these issues.

namgk commented 3 years ago

same here on some of our devices, factory reset fixed the problem. BUT WHY?

adamseoul commented 3 years ago

same here on some of our devices, factory reset fixed the problem. BUT WHY?

I solved this in the past, You are re-making an android_id when you factory reset.

It is something to do with the initialisation of the phone/device, maybe a duplicate or unwritten "android_id" You need to generate a new Android Unique ID, so it is not feasible for app end users. I worked this out after getting tired of factory resetting devices that run my 1000's of units in the field Android hardware/software product.

adb shell content query --uri content://settings/secure --where "name=\'android_id\'"

adb shell content delete --uri content://settings/secure --where "name=\'android_id\'"

adb shell content insert --uri content://settings/secure --bind name:s:android_id --bind value:s:7355de1e9e9670c5
namgk commented 3 years ago

thanks @adamseoul , how do I generate this value: 7355de1e9e9670c5?

BTW, the fact that Firebase depends on this android_id seems wrong.

same here on some of our devices, factory reset fixed the problem. BUT WHY?

I solved this in the past, You are re-making an android_id when you factory reset.

It is something to do with the initialisation of the phone/device, maybe a duplicate or unwritten "android_id" You need to generate a new Android Unique ID, so it is not feasible for app end users. I worked this out after getting tired of factory resetting devices that run my 1000's of units in the field Android hardware/software product.

adb shell content query --uri content://settings/secure --where "name=\'android_id\'"

adb shell content delete --uri content://settings/secure --where "name=\'android_id\'"

adb shell content insert --uri content://settings/secure --bind name:s:android_id --bind value:s:7355de1e9e9670c5
adamseoul commented 3 years ago

Hiya, just change the values a little.

rkshnair commented 3 years ago

ava.io.IOException: AUTHENTICATION_FAILED at com.google.firebase.iid.zzr.zza(Unknown Source:67) at com.google.firebase.iid.zzr.zza(Unknown Source:80) at com.google.firebase.iid.zzu.then(Unknown Source:4) at com.google.android.gms.tasks.zze.run(com.google.android.gms:play-services-tasks@@17.2.0:5) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at java.lang.Thread.run(Thread.java:764)

Same issue, is there any ETA for the issue from Google.

jameshmread commented 3 years ago

Setting your version to implementation 'com.google.firebase:firebase-messaging:20.0.0' worked for me as a workaround for the time being

kururu-abdo commented 3 years ago

@jameshmread in emulator?

tanya-sv commented 2 years ago

@jameshmread Can you share which API are you using, is it the FirebaseInstallations or the deprecated FirebaseInstanceId?

jameshmread commented 2 years ago

@kururu-abdo both emulator and real devices Using Flutter with the following firebase deps @tanya-sv

  firebase_core: 1.3.0
  firebase_analytics: 8.1.2
  firebase_auth: 1.1.3
  firebase_messaging: ^10.0.0
build.gradle
    implementation platform('com.google.firebase:firebase-bom:28.2.0')
    implementation 'com.google.firebase:firebase-analytics'
    implementation 'com.google.firebase:firebase-messaging:20.0.0' 

Disclaimer: I just added as a possible suggestion. I'm not exactly sure what is going on.

chgsilva commented 2 years ago

Same issue here using flutter

  firebase_messaging: ^10.0.0
  firebase_performance: ^0.7.0+2
  firebase_crashlytics: ^2.0.2
  firebase_core: ^1.0.2
chgsilva commented 2 years ago

I am receiving this error with several firebase test lab devices