ANR: Broadcast of Intent act=android.intent.action.MY_PACKAGE_REPLACED
Description: Broadcast of Intent { act=android.intent.action.MY_PACKAGE_REPLACED flg=0x4000010 pkg=br.com.X.Y.Z cmp=br.com.X.Y.Z/com.onesignal.UpgradeReceiver (has extras) }
31 thousands of ANRs in last 30 days affecting 16.8 thousand users
Environment
It's happening with OneSignal library version 3.15.7 on: Android 11 (SDK 30) Android 10 (SDK 29) Android 9 (SDK 28) Android 8.1 (SDK 27) Android 8.0 (SDK 26) Android 7.0 (SDK 24) Android 5.1 (SDK 22) Android 5.0 (SDK 21) Android 6.0 (SDK 23)
Steps to Reproduce Issue: I don't know. I just can catch this on Google Play Developer Console.
Anything else: Developer console couldn't catch stack trace. Just registered the occurrence.
Hey, @pedrofsn, I would recommend you update to version 4.x.x since there have been SDK improvements and bug fixing. There have not been new backported fixes under 3.x.x. Check last 4.x.x version https://github.com/OneSignal/OneSignal-Android-SDK/releases/tag/4.4.0 and the first one on that series https://github.com/OneSignal/OneSignal-Android-SDK/releases/tag/4.0.0
I've had the same problem for a few days now.
react-native-onesignal: 4.1.1, OneSignal-Android-SDK 4.4.0
Log Xiaomi Redmi 9C (M2006C3MG):
ANR: Broadcast of Intent { act=android.intent.action.SCREEN_OFF flg=0x50200010 }
at com.onesignal.LocationController.onFocusChange(LocationController.java:324)
at com.onesignal.OneSignal.onAppFocus(OneSignal.java:1328)
at com.onesignal.ActivityLifecycleHandler.handleFocus(ActivityLifecycleHandler.java:182)
at com.onesignal.ActivityLifecycleHandler.onActivityResumed(ActivityLifecycleHandler.java:88)
at com.onesignal.ActivityLifecycleListener.onActivityResumed(ActivityLifecycleListener.java:91)
at android.app.Application.dispatchActivityResumed(Application.java:461)
at android.app.Activity.dispatchActivityResumed(Activity.java:1296)
at android.app.Activity.onResume(Activity.java:1833)
at androidx.fragment.app.FragmentActivity.onResume(FragmentActivity.java:433)
at com.facebook.react.ReactActivity.onResume(ReactActivity.java:56)
at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1453)
at android.app.Activity.performResume(Activity.java:8050)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4292)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4334)
at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:52)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2073)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:225)
at android.app.ActivityThread.main(ActivityThread.java:7563)
at java.lang.reflect.Method.invoke(Method.java:-2)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:994)
We have a lot of ANR's too:
"main" prio=5 tid=1 Blocked
at com.onesignal.LocationController.onFocusChange (LocationController.java:324)
at com.onesignal.OneSignal.onAppFocus (OneSignal.java:1355)
at com.onesignal.ActivityLifecycleHandler.handleFocus (ActivityLifecycleHandler.java:182)
at com.onesignal.ActivityLifecycleHandler.onActivityResumed (ActivityLifecycleHandler.java:88)
at com.onesignal.ActivityLifecycleListener.onActivityResumed (ActivityLifecycleListener.java:91)
at android.app.Application.dispatchActivityResumed (Application.java:455)
at android.app.Activity.dispatchActivityResumed (Activity.java:1291)
at android.app.Activity.onResume (Activity.java:1819)
at androidx.fragment.app.FragmentActivity.onResume (FragmentActivity.java:433)
at com.some.package.screen.main.MainActivity.onResume (MainActivity.kt:146)
at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1454)
OneSignal SDK v4.6.0
@Jeasmine Hello. No news?
@Jeasmine I upgraded one signal to 4.x.x version and unhappily this lib continues being the most ANR generator in gplay console.
Hi @pedrofsn, @akushnarev-soul, @invyctus92,
I apologize for the lack of response. Thank you for sharing stack traces @akushnarev-soul and @invyctus92. I have seen reports of LocationController.onFocusChange causing an ANR, as it is waiting on something. We would need to know what may be holding it up in other threads, or a reproducible situation.
I know it has been a while, but do you have access to the stack traces of other threads?
To follow up on ANRs due to LocationController.onFocusChange(),
As a workaround while we investigate solutions, if you don't need location points in OneSignal, you can call OneSignal.setLocationShared(false) to disable these location updates.