OneSignal-Android-SDK
OneSignal-Android-SDK copied to clipboard
[Bug]: SharedPreferences in credential encrypted storage are not available until after user is unlocked
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 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