Skip to content

[Bug]: 5.1.4 - NullPointerException: null cannot be cast to non-null type kotlin.String crashes on Startup #1995

Description

@CarlBarks

What happened?

We experienced a NullPointer on initialisation which causes the app to crash on startup. We are on 5.1.4

Might be related to #1990 but the logoutput there suggests a crash at a different place

Seems more related to #1745 however, that was closed in March 2023.

Steps to reproduce?

Not easily reproducible 

1. OneSignal Android SDK `5.1.4`
2. `initWithContext` 
3. Experience crash on Crashlytics

What did you expect to happen?

OneSignal to get initialised without issues across all users and devices

OneSignal Android SDK version

5.1.4

Android version

9

Specific Android models

No response

Relevant log output

Fatal Exception: java.lang.RuntimeException
Unable to create application xxx: java.lang.NullPointerException: null cannot be cast to non-null type kotlin.String
Caused by java.lang.NullPointerException
null cannot be cast to non-null type kotlin.String
com.onesignal.common.modeling.Model.getStringProperty (Model.kt:491)
com.onesignal.common.modeling.Model.getStringProperty$default (Model.kt:488)
com.onesignal.user.internal.identity.IdentityModel.getOnesignalId (IdentityModel.kt:19)
com.onesignal.user.internal.operations.impl.listeners.SubscriptionModelStoreListener.getUpdateOperation (SubscriptionModelStoreListener.kt:48)
com.onesignal.user.internal.operations.impl.listeners.SubscriptionModelStoreListener.getUpdateOperation (SubscriptionModelStoreListener.kt:15)
com.onesignal.core.internal.operations.listeners.ModelStoreListener.onModelUpdated (ModelStoreListener.kt:52)
com.onesignal.common.modeling.ModelStore$onChanged$1.invoke (ModelStore.kt:91)
com.onesignal.common.modeling.ModelStore$onChanged$1.invoke (ModelStore.kt:91)
com.onesignal.common.events.EventProducer.fire (EventProducer.kt:50)
com.onesignal.common.modeling.ModelStore.onChanged (ModelStore.kt:91)
com.onesignal.common.modeling.Model$notifyChanged$1.invoke (Model.kt:666)
com.onesignal.common.modeling.Model$notifyChanged$1.invoke (Model.kt:666)
com.onesignal.common.events.EventProducer.fire (EventProducer.kt:50)
com.onesignal.common.modeling.Model.notifyChanged (Model.kt:666)
com.onesignal.common.modeling.Model.setOptAnyProperty (Model.kt:460)
com.onesignal.common.modeling.Model.setOptEnumProperty$default (Model.kt:327)
com.onesignal.user.internal.subscriptions.SubscriptionModel.getStatus (SubscriptionModel.kt:117)
com.onesignal.user.internal.PushSubscription.getOptedIn (PushSubscription.kt:22)
com.onesignal.user.internal.PushSubscription.fetchState (PushSubscription.kt:44)
com.onesignal.user.internal.PushSubscription.<init> (PushSubscription.kt:15)
com.onesignal.user.internal.subscriptions.impl.SubscriptionManager.createSubscriptionFromModel (SubscriptionManager.kt:232)
com.onesignal.user.internal.subscriptions.impl.SubscriptionManager.createSubscriptionAndAddToSubscriptionList (SubscriptionManager.kt)
com.onesignal.user.internal.subscriptions.impl.SubscriptionManager.onModelAdded (SubscriptionManager.kt:149)
com.onesignal.user.internal.subscriptions.impl.SubscriptionManager.onModelRemoved (SubscriptionManager.kt:41)
com.onesignal.user.internal.subscriptions.impl.SubscriptionManager.onModelAdded (SubscriptionManager.kt:41)
com.onesignal.common.modeling.ModelStore$addItem$2.invoke (ModelStore.kt:138)
com.onesignal.common.modeling.ModelStore$addItem$2.invoke (ModelStore.kt:138)
com.onesignal.common.events.EventProducer.fire (EventProducer.kt:50)
com.onesignal.common.modeling.ModelStore.addItem (ModelStore.kt:138)
com.onesignal.common.modeling.ModelStore.addItem$default (ModelStore.kt:121)
com.onesignal.common.modeling.ModelStore.add (ModelStore.kt:49)
com.onesignal.internal.OneSignalImp.initWithContext (OneSignalImp.kt:299)
com.onesignal.OneSignal.initWithContext (OneSignal.kt:135)
xxx.onCreate (CustomApplication.kt:40)
android.app.Instrumentation.callApplicationOnCreate (Instrumentation.java:1154)

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions