OneSignal / OneSignal-Flutter-SDK

OneSignal is a free push notification service for mobile apps. This plugin makes it easy to integrate your flutter app with OneSignal
https://www.onesignal.com
Other
606 stars 204 forks source link

[Bug]: Android Crash at version 5.1.0 Unable to start receiver #847

Closed burakcbdn closed 3 months ago

burakcbdn commented 4 months ago

What happened?

After upgrading to the latest version our app recorded "Crashes" with following errors

Fatal Exception: java.lang.RuntimeException: Unable to start receiver com.onesignal.notifications.receivers.NotificationDismissReceiver: java.lang.reflect.InvocationTargetException at android.app.ActivityThread.handleReceiver(ActivityThread.java:4619) at android.app.ActivityThread.access$1900(ActivityThread.java:284) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2277) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loopOnce(Looper.java:233) at android.os.Looper.loop(Looper.java:334) at android.app.ActivityThread.main(ActivityThread.java:8333) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:582) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1065)

 `Caused by java.lang.reflect.InvocationTargetException:
   at java.lang.reflect.Constructor.newInstance0(Constructor.java)
   at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
   at com.onesignal.common.services.ServiceRegistrationReflection.resolve(ServiceRegistration.kt:89)
   at com.onesignal.common.services.ServiceProvider.getServiceOrNull(ServiceProvider.kt:79)
   at com.onesignal.common.services.ServiceProvider.getService(ServiceProvider.kt:67)
   at com.onesignal.internal.OneSignalImp.initWithContext(OneSignalImp.kt:472)
   at com.onesignal.OneSignal.initWithContext(OneSignal.kt:208)
   at com.onesignal.notifications.receivers.NotificationDismissReceiver.onReceive(NotificationDismissReceiver.kt:39)
   at android.app.ActivityThread.handleReceiver(ActivityThread.java:4610)
   at android.app.ActivityThread.access$1900(ActivityThread.java:284)
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2277)
   at android.os.Handler.dispatchMessage(Handler.java:106)
   at android.os.Looper.loopOnce(Looper.java:233)
   at android.os.Looper.loop(Looper.java:334)
   at android.app.ActivityThread.main(ActivityThread.java:8333)
   at java.lang.reflect.Method.invoke(Method.java)
   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:582)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1065)`

   `Caused by java.lang.NullPointerException:
   at com.onesignal.core.internal.application.impl.ApplicationService.getAppContext(ApplicationService.kt:39)
   at com.onesignal.core.internal.preferences.impl.PreferencesService.getSharedPrefsByName(PreferencesService.kt:234)
   at com.onesignal.core.internal.preferences.impl.PreferencesService.get(PreferencesService.kt:134)
   at com.onesignal.core.internal.preferences.impl.PreferencesService.getString(PreferencesService.kt:42)
   at com.onesignal.common.modeling.ModelStore.load(ModelStore.kt:165)
   at com.onesignal.common.modeling.SimpleModelStore.<init>(SimpleModelStore.kt:23)
   at com.onesignal.core.internal.config.ConfigModelStore.<init>(ConfigModelStore.kt:8)
   at java.lang.reflect.Constructor.newInstance0(Constructor.java)
   at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
   at com.onesignal.common.services.ServiceRegistrationReflection.resolve(ServiceRegistration.kt:89)
   at com.onesignal.common.services.ServiceProvider.getServiceOrNull(ServiceProvider.kt:79)
   at com.onesignal.common.services.ServiceProvider.getService(ServiceProvider.kt:67)
   at com.onesignal.internal.OneSignalImp.initWithContext(OneSignalImp.kt:472)
   at com.onesignal.OneSignal.initWithContext(OneSignal.kt:208)
   at com.onesignal.notifications.receivers.NotificationDismissReceiver.onReceive(NotificationDismissReceiver.kt:39)
   at android.app.ActivityThread.handleReceiver(ActivityThread.java:4610)
   at android.app.ActivityThread.access$1900(ActivityThread.java:284)
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2277)
   at android.os.Handler.dispatchMessage(Handler.java:106)
   at android.os.Looper.loopOnce(Looper.java:233)
   at android.os.Looper.loop(Looper.java:334)
   at android.app.ActivityThread.main(ActivityThread.java:8333)
   at java.lang.reflect.Method.invoke(Method.java)
   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:582)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1065)`

Steps to reproduce?

1. Install version 5.1.0
2. Run the app

What did you expect to happen?

Expect app to launch without crash

OneSignal Flutter SDK version

Release 5.1.0

Which platform(s) are affected?

Relevant log output

No response

Code of Conduct

jkasten2 commented 3 months ago

@burakcbdn I believe this should be fixed with Release 5.1.2. Let us know if it fixes the issue for you! If not please provide the new stacktrace