Skip to content

FirebaseConfig crashes an app when backgrounded on android 5 and 6 #6956

Closed as duplicate of#6934
@tjohnn

Description

@tjohnn

Describe your environment

  • Android Studio version: Meerkat | 2024.3.1
  • Firebase Component: FirebaseConfig
  • Component version: 22.1.1
  • Device: Nexus 6, Android 6 API Level 23

Describe the problem

Steps to reproduce:

  • Open an app which calls remoteConfig.addOnConfigUpdateListener(...) on start
  • Wait until remoteConfig.addOnConfigUpdateListener(...) is called by the app
  • Send the app to background by clicking on home button
  • App crashes

Relevant Code:

Stacktrace:

android.os.NetworkOnMainThreadException
at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1273)
at com.android.org.conscrypt.OpenSSLSocketImpl.shutdownAndFreeSslNative(OpenSSLSocketImpl.java:1131)
at com.android.org.conscrypt.OpenSSLSocketImpl.close(OpenSSLSocketImpl.java:1126)
at com.android.okhttp.Connection.closeIfOwnedBy(Connection.java:132)
at com.android.okhttp.OkHttpClient$1.closeIfOwnedBy(OkHttpClient.java:75)
at com.android.okhttp.internal.http.HttpConnection.closeIfOwnedBy(HttpConnection.java:137)
at com.android.okhttp.internal.http.HttpTransport.disconnect(HttpTransport.java:135)
at com.android.okhttp.internal.http.HttpEngine.disconnect(HttpEngine.java:578)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.disconnect(HttpURLConnectionImpl.java:122)
at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.disconnect(DelegatingHttpsURLConnection.java:93)
at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.disconnect(HttpsURLConnectionImpl.java)
at com.google.firebase.remoteconfig.internal.ConfigRealtimeHttpClient.setIsInBackground(ConfigRealtimeHttpClient.java:413)
at com.google.firebase.remoteconfig.internal.ConfigRealtimeHandler.setBackgroundState(ConfigRealtimeHandler.java:94)
at com.google.firebase.remoteconfig.FirebaseRemoteConfig.setConfigUpdateBackgroundState(FirebaseRemoteConfig.java:715)
at com.google.firebase.remoteconfig.RemoteConfigComponent.notifyRCInstances(RemoteConfigComponent.java:367)
at com.google.firebase.remoteconfig.RemoteConfigComponent.access$100(RemoteConfigComponent.java:64)
at com.google.firebase.remoteconfig.RemoteConfigComponent$GlobalBackgroundListener.onBackgroundStateChanged(RemoteConfigComponent.java:405)
at com.google.android.gms.common.api.internal.BackgroundDetector.zza(com.google.android.gms:play-services-basement@@18.3.0:3)
at com.google.android.gms.common.api.internal.BackgroundDetector.onTrimMemory(com.google.android.gms:play-services-basement@@18.3.0:3)
at android.app.Application.onTrimMemory(Application.java:134)
at android.app.ActivityThread.handleTrimMemory(ActivityThread.java:4392)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1532)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

PS: There crash is gone by reverting to FirebaseConfig 22.1.0

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions