简体   繁体   中英

Why does I'm getting "Service not registered" exception, even though I not used any service in Android - Java/Kotlin?

I haven't used any receiver or something. But I used Firebase in my Android project. Previously I was not getting this exception, but suddenly it is showing!

Exception:

W: Exception thrown while unbinding
    java.lang.IllegalArgumentException: Service not registered: com.google.android.gms.measurement.internal.zzjp@4701ac1
        at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:1751)
        at android.app.ContextImpl.unbindService(ContextImpl.java:1776)
        at android.content.ContextWrapper.unbindService(ContextWrapper.java:741)
        at com.google.android.gms.common.stats.ConnectionTracker.zza(com.google.android.gms:play-services-basement@@17.3.0:55)
        at com.google.android.gms.common.stats.ConnectionTracker.unbindService(com.google.android.gms:play-services-basement@@17.3.0:50)
        at com.google.android.gms.measurement.internal.zziv.zzag(com.google.android.gms:play-services-measurement-impl@@17.5.0:245)
        at com.google.android.gms.measurement.internal.zziv.zzal(com.google.android.gms:play-services-measurement-impl@@17.5.0:262)
        at com.google.android.gms.measurement.internal.zziv.zzc(com.google.android.gms:play-services-measurement-impl@@17.5.0:336)
        at com.google.android.gms.measurement.internal.zziu.zza(com.google.android.gms:play-services-measurement-impl@@17.5.0:2)
        at com.google.android.gms.measurement.internal.zzai.run(com.google.android.gms:play-services-measurement-impl@@17.5.0:7)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:462)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at com.google.android.gms.measurement.internal.zzfy.run(com.google.android.gms:play-services-measurement-impl@@17.5.0:21)

There is nothing important in Manifest file.

Buld.gradle (app):

buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.1.0-rc03'
        classpath 'com.google.gms:google-services:4.3.4'
        classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

Build.gradle (module)

dependencies {
    ......

//Google Firebase
    implementation 'com.google.firebase:firebase-auth:19.4.0'
    implementation 'com.google.firebase:firebase-database:19.5.0'
    implementation 'com.google.firebase:firebase-messaging:20.3.0'
    implementation 'com.google.firebase:firebase-storage:19.2.0'
    implementation 'com.google.firebase:firebase-crashlytics:17.2.2'
    implementation 'com.google.android.gms:play-services-analytics:17.0.0'
    implementation 'com.google.firebase:firebase-analytics:17.5.0'
 //Google Location
    implementation 'com.google.android.gms:play-services-location:17.1.0'

    //Shimmer Layout
    implementation 'com.facebook.shimmer:shimmer:0.5.0'

    //Google Auth
    implementation 'com.google.android.gms:play-services-auth:18.1.0'
    implementation 'com.google.android.gms:play-services-auth-api-phone:17.4.0'

BaseApplication

public class BaseApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true);
        FirebaseAnalytics.getInstance(this).setAnalyticsCollectionEnabled(true);
    }

    protected void showLog(String msg) {
        Log.d(this.getClass().getSimpleName(), msg);
    }

}

Troubleshooting:

  1. Found this: https://developers.google.com/android/reference/com/google/android/gms/measurement/package-summary
  2. Searched on stackoverflow, but not found proper solution
  3. Checked Manifest file
  4. While testing, Firebase services are running fine
  5. Not understood, what to debug where!

Thank you!

Add this to your build.gradle dependencies:

dependencies {
    implementation 'com.google.android.gms:play-services-basement:17.5.0'
}

This answer is last updated on: 12-Feb-2021

No action is required from our side. Just wait when Google will release this "Fixed" issue in February 2021 approximately.

As many of you have pointed out, it turns out that there exist some device configurations that trigger the warning even with the workaround I provided above.

Unfortunately there is nothing more we can do to "silence" the warning on the SDK side. The warning is caused by "Google Play Services" itself. The good news is that the root cause of the issue is now fixed, however it will roll out to devices around February, so we will have to live with this warning for a few months.

I understand that it is causing inconvenience for developers, but fwiw it's a warning not a crash. So please bear with us till the update gets rolled out. Thanks

PS: Many of you have commented that this warning is sometimes followed by a crash(with its own exception), I am fairly confident that in most cases, the crash is completely unrelated to this warning and just so happens to occur right after it. So please investigate your crashes independently, just ignoring the warning. If however you think that the crash is related, please provide:

full stack traces at the event of crash relevant dependencies of your app ideally steps to reproduce Bumping this reply again, so it's more visible for folks.

Once again: The warning is benign and is safe to ignore. The fix will get rolled out around Feb 2021, no action is required on developers' side, the fix will apply to google play services itself and existing apps will stop generating the warning.

Source: https://github.com/firebase/firebase-android-sdk/issues/1662#issuecomment-756917362

I recently had a similar issue but with AdMob in the android emulator. Search for a solution but I found nothing. finally, I close the emulator, open the AVD manager wipe emulator data, reopen the emulator then the warning exception was gone.

Dev's who are facing issue on this problem i have checked a lot with com.google.firebase:firebase-bom:26.1.1 i think so some dependencies has to be changed on flutter side so as to support the latest one.

But still you can have your app working without any exception using this : in your //build.gradle file ...

Just replace the bom version or you can have my own which i am using too..

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation platform('com.google.firebase:firebase-bom:25.12.0')
    implementation 'com.google.firebase:firebase-analytics-ktx'
    implementation 'com.google.firebase:firebase-messaging'
}

I was facing same issue. But on checking at firebase console I found firebase error as "Storage full" it means free space for month is used for database.

在此处输入图片说明

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM