OneSignal / OneSignal-Android-SDK

OneSignal is a free push notification service for mobile apps. This plugin makes it easy to integrate your native Android or Amazon app with OneSignal. https://onesignal.com
Other
604 stars 368 forks source link

[Bug]: com.onesignal.notifications.internal.generation.impl.NotificationGenerationWorkManager.beginEnqueueingWork ANR triggered by slow operations in main thread #1998

Open ayushi-sk opened 7 months ago

ayushi-sk commented 7 months ago

What happened?

ANR

Steps to reproduce?

OneSignal integration

What did you expect to happen?

No ANR please

OneSignal Android SDK version

5.1.2 and all others

Android version

13, 12, 11

Specific Android models

No response

Relevant log output

at com.onesignal.notifications.internal.generation.impl.NotificationGenerationWorkManager.beginEnqueueingWork(NotificationGenerationWorkManager.kt:50)
       at com.onesignal.notifications.internal.bundle.impl.NotificationBundleProcessor.processBundleFromReceiver(NotificationBundleProcessor.kt:99)
       at com.onesignal.notifications.receivers.FCMBroadcastReceiver.onReceive(FCMBroadcastReceiver.kt:37)

Code of Conduct

jkasten2 commented 7 months ago

@ayushi-sk Thanks for reporting, but we don't have enough information to investigate. Could you provide the following information?

  1. Can you reproduce the issue on any of your devices or emulators? If so, please provide steps to reproduce
  2. Can you provide a full ANR report for all threads?
  3. What percentage of users or devices are affected by this ANR?
ayushi-sk commented 6 months ago
  1. Couldn't reproduce it
main (runnable):tid=1 systid=9182 
       at java.util.HashSet.add(HashSet.java:219)
       at kotlin.collections.ArraysKt___ArraysKt.toCollection(ArraysKt___Arrays.kt:9523)
       at kotlin.collections.SetsKt__SetsKt.mutableSetOf(SetsKt__Sets.kt:78)
       at androidx.work.WorkRequest$Builder.<init>(WorkRequest.kt:72)
       at androidx.work.OneTimeWorkRequest$Builder.<init>(OneTimeWorkRequest.java:36)
       at com.onesignal.notifications.internal.generation.impl.NotificationGenerationWorkManager.beginEnqueueingWork(NotificationGenerationWorkManager.kt:52)
       at com.onesignal.notifications.internal.bundle.impl.NotificationBundleProcessor.processBundleFromReceiver(NotificationBundleProcessor.kt:99)
       at com.onesignal.notifications.receivers.FCMBroadcastReceiver.onReceive(FCMBroadcastReceiver.kt:37)
       at android.app.ActivityThread.handleReceiver(ActivityThread.java:4369)
       at android.app.ActivityThread.access$1700(ActivityThread.java:265)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2180)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loop(Looper.java:257)
       at android.app.ActivityThread.main(ActivityThread.java:8220)
       at java.lang.reflect.Method.invoke(Native method)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:626)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1015)
  1. All android version and all device models