firebase / firebase-android-sdk

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

ExceptionInInitializerError when app in background #5324

Open yosefBazaart opened 9 months ago

yosefBazaart commented 9 months ago

[READ] Step 1: Are you in the right place?

yes

[REQUIRED] Step 2: Describe your environment

[REQUIRED] Step 3: Describe the problem

In the Play Store console we are getting a crash report in firebase sdk, not clear what is causing it but it only started to occur in the version that we updated the firebase sdk from 28.3.0 to 32.2.3

Steps to reproduce:

there is no way to reproduce it, it also occcur 100% of the times when the app is in the background. attaching the stack trace from the console:

Exception java.lang.ExceptionInInitializerError: at com.google.android.datatransport.runtime.scheduling.persistence.EventStoreModule.storeConfig (EventStoreModule.java) at com.google.android.datatransport.runtime.scheduling.persistence.EventStoreModule_StoreConfigFactory.storeConfig (EventStoreModule_StoreConfigFactory.java) at com.google.android.datatransport.runtime.scheduling.persistence.EventStoreModule_StoreConfigFactory.get (EventStoreModule_StoreConfigFactory.java) at com.google.android.datatransport.runtime.scheduling.persistence.EventStoreModule_StoreConfigFactory.get (EventStoreModule_StoreConfigFactory.java) at com.google.android.datatransport.runtime.dagger.internal.DoubleCheck.get (DoubleCheck.java) at com.google.android.datatransport.runtime.scheduling.SchedulingModule_WorkSchedulerFactory.get (SchedulingModule_WorkSchedulerFactory.java) at com.google.android.datatransport.runtime.scheduling.SchedulingModule_WorkSchedulerFactory.get (SchedulingModule_WorkSchedulerFactory.java) at com.google.android.datatransport.runtime.scheduling.DefaultScheduler_Factory.get (DefaultScheduler_Factory.java) at com.google.android.datatransport.runtime.scheduling.DefaultScheduler_Factory.get (DefaultScheduler_Factory.java) at com.google.android.datatransport.runtime.dagger.internal.DoubleCheck.get (DoubleCheck.java) at com.google.android.datatransport.runtime.TransportRuntime.getInstance (TransportRuntime.java) at com.google.android.datatransport.runtime.scheduling.jobscheduling.JobInfoSchedulerService.onStartJob (JobInfoSchedulerService.java) at android.app.job.JobService$1.onStartJob (JobService.java:68) at android.app.job.JobServiceEngine$JobHandler.handleMessage (JobServiceEngine.java:105) at android.os.Handler.dispatchMessage (Handler.java:106) at android.os.Looper.loopOnce (Looper.java:226) at android.os.Looper.loop (Looper.java:313) at android.app.ActivityThread.main (ActivityThread.java:8810) at java.lang.reflect.Method.invoke at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:604) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1067) Caused by java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.isEmpty()' on a null object reference at com.google.android.datatransport.runtime.scheduling.persistence.EventStoreConfig.builder (EventStoreConfig.java) at com.google.android.datatransport.runtime.scheduling.persistence.EventStoreConfig.<clinit> (EventStoreConfig.java)

argzdev commented 9 months ago

Hi @yosefBazaart, thanks for reaching out. In order for us to isolate the problem, could you confirm if you're only using these 3 products - Database/Storage/Analytics? If not, could you kindly specify each product? Also is there any chance you could share code snippets that you're using related to these products? It'll help us out a lot to investigate this issue further, thanks!

yosefBazaart commented 9 months ago

Hello @argzdev thank you for your response, Here are the Firebase imports that we have in our app:

    implementation(platform("com.google.firebase:firebase-bom:32.2.3"))
    implementation("com.google.firebase:firebase-analytics-ktx")
    implementation("com.google.firebase:firebase-config-ktx")
    implementation("com.google.firebase:firebase-crashlytics-ktx")
    implementation("com.google.firebase:firebase-messaging-ktx")
    implementation("com.google.firebase:firebase-perf-ktx")
lehcar09 commented 1 week ago

Thank you for the details you shared @yosefBazaart. I was having a trouble in reproducing the issue. Could you try using the latest Firebase SDK version (33.1.1) and see if the issue persists? If so, could share code snippet/ MCVE to help us out a lot to investigate this issue? Thanks!