OneSignal-Android-SDK icon indicating copy to clipboard operation
OneSignal-Android-SDK copied to clipboard

[Bug]: SharedPreferences in credential encrypted storage are not available until after user is unlocked

Open Munzey opened this issue 1 year ago • 1 comments

What happened?

Firebase crash report of java.lang.IllegalStateException:. happened to a single user but reporting anyway.

Firebase crash stacktrace:

android.app.ContextImpl.getSharedPreferences (ContextImpl.java:577)
android.content.ContextWrapper.getSharedPreferences (ContextWrapper.java:226)
com.onesignal.OneSignalPrefs.getSharedPrefsByName (OneSignalPrefs.java:330)
com.onesignal.OneSignalPrefs.get (OneSignalPrefs.java:302)
com.onesignal.OneSignalPrefs.getString (OneSignalPrefs.java:266)
com.onesignal.OSSharedPreferencesWrapper.getString (OSSharedPreferencesWrapper.java:22)
com.onesignal.language.LanguageContext.<init> (LanguageContext.java:23)
com.onesignal.OneSignal.setupContextListeners (OneSignal.java:902)
com.onesignal.OneSignal.initWithContext (OneSignal.java:760)```

### Steps to reproduce?

```Markdown
Firebase crash report

What did you expect to happen?

not crash

OneSignal Android SDK version

4.8.9

Android version

13

Specific Android models

Samsung Galaxy S20+ 5G

Relevant log output

No response

Code of Conduct

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

Munzey avatar Jun 24 '24 10:06 Munzey

@Munzey thanks for reporting, I believe this happens when the user reboots their device but hasn't unlocked it yet. I believe we will need to look into Android's Direct Boot to solve this:

  • https://developer.android.com/privacy-and-security/direct-boot

Related OneSignal Issues:

  • https://github.com/OneSignal/OneSignal-Flutter-SDK/issues/897
  • https://github.com/OneSignal/OneSignal-Flutter-SDK/issues/865

jkasten2 avatar Jun 24 '24 19:06 jkasten2