lingver
lingver copied to clipboard
ANR when calling Lingver.init in Application.onCreate
We're seeing a lot of ANRs being reported that are caused by Lingver init call. This is occurring during the process creation time (cold start), when calling Lingver.init(context)
on the Application.onCreate
Unable to repro this. Is there any resolution to this?
Lingver SDK version: 1.3.0
Stats: 100% of them are background ANRs
OS:
- 50% in Android 11
- 50% in Android 12
Devices:
- 76% in Samsung
- 9% in Vivo
- 6% in Xiaomi
- 9% others
main (waiting)
tid=1 systid=27706
Triggered ANR
Root blocking
IO Root blocking
Stack trace
java.lang.Object.wait (Object.java)
java.lang.Object.wait (Object.java:442)
java.lang.Object.wait (Object.java:568)
android.app.SharedPreferencesImpl.awaitLoadedLocked (SharedPreferencesImpl.java:279)
android.app.SharedPreferencesImpl.getBoolean (SharedPreferencesImpl.java:344)
com.yariksoffice.lingver.store.PreferenceLocaleStore.isFollowingSystemLocale (PreferenceLocaleStore.kt:69)
com.yariksoffice.lingver.Lingver.initialize$com_yariksoffice_lingver_library (Lingver.kt:120)
com.yariksoffice.lingver.Lingver$Companion.init (Lingver.kt:192)
com.yariksoffice.lingver.Lingver$Companion.init (Lingver.kt:182)
com.yariksoffice.lingver.Lingver$Companion.init$default (Lingver.kt:181)
com.myapp.main.MyApplication.onCreate (MyApplication.java:80)
android.app.Instrumentation.callApplicationOnCreate (Instrumentation.java:1211)
android.app.ActivityThread.handleBindApplication (ActivityThread.java:7506)
android.app.ActivityThread.access$1600 (ActivityThread.java:310)
android.app.ActivityThread$H.handleMessage (ActivityThread.java:2281)
android.os.Handler.dispatchMessage (Handler.java:106)
android.os.Looper.loopOnce (Looper.java:226)
android.os.Looper.loop (Looper.java:313)
android.app.ActivityThread.main (ActivityThread.java:8663)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:567)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1135)
Hey @joelfernandes19
Indeed, the library performs a file read (from shared preferences) during initialization, but that should not make a significant performance impact on your app. Unfortunately, I don't see how we can avoid this call.
Is it reported by Google Play? I'm curious why the report is for Android 11/12 only. Do you support other versions?
Closed due to inactivity