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

ANR: Executing service com.onesignal.SyncJobService `LocationController.onFocusChange`

Open russell-kondaveti opened this issue 2 years ago • 2 comments

Description:

16% of our Application's ANRs are resulted from OneSignal since we integrated 3 months ago.

Environment

  1. What version of the Android SDK are you using? 4.7.0 - 4.7.2
  2. How did you add the SDK to your project ? Maven

Steps to Reproduce Issue: None. Only evidence is the ANR reports on Play store.

Anything else: A lot of these instances don't have any stack traces and the ones that have as the thread with below stack trace blocked.

"main" prio=5 tid=1 Blocked
  at com.onesignal.LocationController.onFocusChange (LocationController.java:324)
  at com.onesignal.OneSignal.onAppFocus (OneSignal.java:1402)
  at com.onesignal.OSFocusHandler.startOnFocusWork (OSFocusHandler.kt:49)
  at com.onesignal.ActivityLifecycleHandler.handleFocus (ActivityLifecycleHandler.java:191)
  at com.onesignal.ActivityLifecycleHandler.onActivityResumed (ActivityLifecycleHandler.java:95)
  at com.onesignal.ActivityLifecycleListener.onActivityResumed (ActivityLifecycleListener.java:91)
  at android.app.Application.dispatchActivityResumed (Application.java:455)
  at android.app.Activity.dispatchActivityResumed (Activity.java:1418)
  at android.app.Activity.onResume (Activity.java:1950)
  at androidx.fragment.app.FragmentActivity.onResume (FragmentActivity.java:455)
  at com.keeptruckin.android.view.BaseFragmentActivity.onResume (BaseFragmentActivity.java:103)
  at com.keeptruckin.android.view.logs.log.LogActivity.onResume (LogActivity.java:278)
  at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1456)
  at android.app.Activity.performResume (Activity.java:8361)
  at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4902)
  at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:4949)
  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:2325)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:247)
  at android.app.ActivityThread.main (ActivityThread.java:8656)
  at java.lang.reflect.Method.invoke (Native method)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:602)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1130)

russell-kondaveti avatar May 31 '22 23:05 russell-kondaveti

Hi @russellkondaveti,

Thank you for reporting this issue. This is an ANR we are investigating. I know you mentioned not being able to see many stack traces, but any chance some of the crashes show the other threads? This will give us more information on what the main thread is waiting on.

Also, could you please let us know:

  1. What Android versions and devices are seeing this ANR?
  2. How many users, and what percent of users are getting this?

Thanks for your help and patience as we investigate this issue.

nan-li avatar Jun 23 '22 17:06 nan-li

Hi @nan-li ,

Here is the full stack trace,

Type
"Signal Catcher" daemon prio=10 tid=6 Runnable
  #00  pc 00000000004b09a4  /apex/com.android.art/lib64/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+140)
  #00  pc 00000000005c0234  /apex/com.android.art/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool, BacktraceMap*, bool) const+372)
  #00  pc 00000000005dd7d4  /apex/com.android.art/lib64/libart.so (art::DumpCheckpoint::Run(art::Thread*)+924)
  #00  pc 00000000005d7644  /apex/com.android.art/lib64/libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*)+532)
  #00  pc 00000000005d67c4  /apex/com.android.art/lib64/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool)+1876)
  #00  pc 00000000005d5c80  /apex/com.android.art/lib64/libart.so (art::ThreadList::DumpForSigQuit(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)+792)
  #00  pc 0000000000580d74  /apex/com.android.art/lib64/libart.so (art::Runtime::DumpForSigQuit(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)+196)
  #00  pc 0000000000596834  /apex/com.android.art/lib64/libart.so (art::SignalCatcher::HandleSigQuit()+1396)
  #00  pc 00000000005957b8  /apex/com.android.art/lib64/libart.so (art::SignalCatcher::Run(void*)+384)
  #00  pc 00000000000ed098  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc 000000000008cb10  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
Type
"main" prio=5 tid=1 Blocked
  at com.onesignal.LocationController.onFocusChange (LocationController.java:324)
  at com.onesignal.OneSignal.onAppFocus (OneSignal.java:1402)
  at com.onesignal.OSFocusHandler.startOnFocusWork (OSFocusHandler.kt:49)
  at com.onesignal.ActivityLifecycleHandler.handleFocus (ActivityLifecycleHandler.java:191)
  at com.onesignal.ActivityLifecycleHandler.onActivityResumed (ActivityLifecycleHandler.java:95)
  at com.onesignal.ActivityLifecycleListener.onActivityResumed (ActivityLifecycleListener.java:91)
  at android.app.Application.dispatchActivityResumed (Application.java:455)
  at android.app.Activity.dispatchActivityResumed (Activity.java:1413)
  at android.app.Activity.onResume (Activity.java:1945)
  at androidx.fragment.app.FragmentActivity.onResume (FragmentActivity.java:455)
  at com.keeptruckin.android.view.BaseFragmentActivity.onResume (BaseFragmentActivity.java:100)
  at com.keeptruckin.android.view.RxBaseFragmentActivity.onResume (RxBaseFragmentActivity.java:31)
  at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1456)
  at android.app.Activity.performResume (Activity.java:8353)
  at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4908)
  at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:4955)
  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:2336)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:246)
  at android.app.ActivityThread.main (ActivityThread.java:8653)
  at java.lang.reflect.Method.invoke (Native method)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:602)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1130)
Type
"Jit thread pool worker thread 0" daemon prio=5 tid=7 Native
  #00  pc 0000000000086f8c  /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
  #00  pc 00000000001b27a4  /apex/com.android.art/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
  #00  pc 00000000005df550  /apex/com.android.art/lib64/libart.so (art::ThreadPool::GetTask(art::Thread*)+120)
  #00  pc 00000000005de7d8  /apex/com.android.art/lib64/libart.so (art::ThreadPoolWorker::Run()+144)
  #00  pc 00000000005de278  /apex/com.android.art/lib64/libart.so (art::ThreadPoolWorker::Callback(void*)+192)
  #00  pc 00000000000ed098  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc 000000000008cb10  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
Type
"HeapTaskDaemon" daemon prio=5 tid=8 WaitingForTaskProcessor
  #00  pc 0000000000086f8c  /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
  #00  pc 00000000001b27a4  /apex/com.android.art/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
  #00  pc 00000000002ea45c  /apex/com.android.art/lib64/libart.so (art::gc::TaskProcessor::GetTask(art::Thread*)+548)
  #00  pc 00000000002eadac  /apex/com.android.art/lib64/libart.so (art::gc::TaskProcessor::RunAllTasks(art::Thread*)+92)
  at dalvik.system.VMRuntime.runHeapTasks (Native method)
  at java.lang.Daemons$HeapTaskDaemon.runInternal (Daemons.java:531)
  at java.lang.Daemons$Daemon.run (Daemons.java:139)
  at java.lang.Thread.run (Thread.java:923)
Type
"ReferenceQueueDaemon" daemon prio=5 tid=9 Waiting
  at java.lang.Object.wait (Native method)
  at java.lang.Object.wait (Object.java:442)
  at java.lang.Object.wait (Object.java:568)
  at java.lang.Daemons$ReferenceQueueDaemon.runInternal (Daemons.java:217)
  at java.lang.Daemons$Daemon.run (Daemons.java:139)
  at java.lang.Thread.run (Thread.java:923)
Type
"FinalizerDaemon" daemon prio=5 tid=10 Waiting
  at java.lang.Object.wait (Native method)
  at java.lang.Object.wait (Object.java:442)
  at java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:190)
  at java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:211)
  at java.lang.Daemons$FinalizerDaemon.runInternal (Daemons.java:273)
  at java.lang.Daemons$Daemon.run (Daemons.java:139)
  at java.lang.Thread.run (Thread.java:923)
Type
"FinalizerWatchdogDaemon" daemon prio=5 tid=11 Waiting
  at java.lang.Object.wait (Native method)
  at java.lang.Object.wait (Object.java:442)
  at java.lang.Object.wait (Object.java:568)
  at java.lang.Daemons$FinalizerWatchdogDaemon.sleepUntilNeeded (Daemons.java:341)
  at java.lang.Daemons$FinalizerWatchdogDaemon.runInternal (Daemons.java:321)
  at java.lang.Daemons$Daemon.run (Daemons.java:139)
  at java.lang.Thread.run (Thread.java:923)
Type
"Binder:4690_1" prio=5 tid=12 Native
  #00  pc 00000000000d7f64  /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+4)
  #00  pc 00000000000945f8  /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+160)
  #00  pc 0000000000052c6c  /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+300)
  #00  pc 0000000000052f28  /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+24)
  #00  pc 0000000000053b64  /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+68)
  #00  pc 000000000007bcc4  /system/lib64/libbinder.so (android::PoolThread::threadLoop()+388)
  #00  pc 000000000001567c  /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+260)
  #00  pc 00000000000a47b4  /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+140)
  #00  pc 0000000000014f14  /system/lib64/libutils.so (thread_data_t::trampoline(thread_data_t const*)+412)
  #00  pc 00000000000ed098  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc 000000000008cb10  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
Type
"Binder:4690_2" prio=5 tid=13 Native
  #00  pc 00000000000d7f64  /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+4)
  #00  pc 00000000000945f8  /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+160)
  #00  pc 0000000000052c6c  /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+300)
  #00  pc 0000000000052f28  /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+24)
  #00  pc 0000000000053b64  /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+68)
  #00  pc 000000000007bcc4  /system/lib64/libbinder.so (android::PoolThread::threadLoop()+388)
  #00  pc 000000000001567c  /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+260)
  #00  pc 00000000000a47b4  /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+140)
  #00  pc 0000000000014f14  /system/lib64/libutils.so (thread_data_t::trampoline(thread_data_t const*)+412)
  #00  pc 00000000000ed098  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc 000000000008cb10  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
Type
"Binder:4690_3" prio=5 tid=14 Native
  #00  pc 00000000000d7f64  /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+4)
  #00  pc 00000000000945f8  /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+160)
  #00  pc 0000000000052c6c  /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+300)
  #00  pc 0000000000052f28  /system/lib64/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+24)
  #00  pc 0000000000053b64  /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+68)
  #00  pc 000000000007bcc4  /system/lib64/libbinder.so (android::PoolThread::threadLoop()+388)
  #00  pc 000000000001567c  /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+260)
  #00  pc 00000000000a47b4  /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+140)
  #00  pc 0000000000014f14  /system/lib64/libutils.so (thread_data_t::trampoline(thread_data_t const*)+412)
  #00  pc 00000000000ed098  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc 000000000008cb10  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
Type
"Profile Saver" daemon prio=5 tid=15 Native
  #00  pc 0000000000086f8c  /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
  #00  pc 00000000001b27a4  /apex/com.android.art/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
  #00  pc 00000000003621a4  /apex/com.android.art/lib64/libart.so (art::ProfileSaver::Run()+484)
  #00  pc 0000000000367048  /apex/com.android.art/lib64/libart.so (art::ProfileSaver::RunProfileSaverThread(void*)+176)
  #00  pc 00000000000ed098  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc 000000000008cb10  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
Type
"Crashlytics Exception Handler1" prio=5 tid=20 Waiting
  at sun.misc.Unsafe.park (Native method)
  at java.util.concurrent.locks.LockSupport.park (LockSupport.java:190)
  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await (AbstractQueuedSynchronizer.java:2067)
  at java.util.concurrent.LinkedBlockingQueue.take (LinkedBlockingQueue.java:442)
  at java.util.concurrent.ThreadPoolExecutor.getTask (ThreadPoolExecutor.java:1092)
  at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1152)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:641)
  at com.google.firebase.crashlytics.internal.common.w$a$a.a (SourceFile:1)
  at com.google.firebase.crashlytics.internal.common.d.run (SourceFile:2)
  at java.lang.Thread.run (Thread.java:923)
Type
"com.google.firebase.crashlytics.startup1" prio=5 tid=21 Waiting
  at sun.misc.Unsafe.park (Native method)
  at java.util.concurrent.locks.LockSupport.park (LockSupport.java:190)
  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await (AbstractQueuedSynchronizer.java:2067)
  at java.util.concurrent.LinkedBlockingQueue.take (LinkedBlockingQueue.java:442)
  at java.util.concurrent.ThreadPoolExecutor.getTask (ThreadPoolExecutor.java:1092)
  at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1152)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:641)
  at com.google.firebase.crashlytics.internal.common.w$a$a.a (SourceFile:1)
  at com.google.firebase.crashlytics.internal.common.d.run (SourceFile:2)
  at java.lang.Thread.run (Thread.java:923)
Type
"pool-6-thread-1" prio=5 tid=22 Waiting
  at sun.misc.Unsafe.park (Native method)
  at java.util.concurrent.locks.LockSupport.park (LockSupport.java:190)
  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await (AbstractQueuedSynchronizer.java:2067)
  at java.util.concurrent.LinkedBlockingQueue.take (LinkedBlockingQueue.java:442)
  at java.util.concurrent.ThreadPoolExecutor.getTask (ThreadPoolExecutor.java:1092)
  at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1152)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:641)
  at java.lang.Thread.run (Thread.java:923)
Type
"awaitEvenIfOnMainThread task continuation executor1" prio=5 tid=23 Waiting
  at sun.misc.Unsafe.park (Native method)
  at java.util.concurrent.locks.LockSupport.park (LockSupport.java:190)
  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await (AbstractQueuedSynchronizer.java:2067)
  at java.util.concurrent.LinkedBlockingQueue.take (LinkedBlockingQueue.java:442)
  at java.util.concurrent.ThreadPoolExecutor.getTask (ThreadPoolExecutor.java:1092)
  at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1152)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:641)
  at com.google.firebase.crashlytics.internal.common.w$a$a.a (SourceFile:1)
  at com.google.firebase.crashlytics.internal.common.d.run (SourceFile:2)
  at java.lang.Thread.run (Thread.java:923)
Type
"queued-work-looper" prio=5 tid=25 Native
  #00  pc 00000000000d8f28  /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
  #00  pc 0000000000019d88  /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
  #00  pc 0000000000019c68  /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
  #00  pc 00000000001185e4  /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
  at android.os.MessageQueue.nativePollOnce (Native method)
  at android.os.MessageQueue.next (MessageQueue.java:335)
  at android.os.Looper.loop (Looper.java:206)
  at android.os.HandlerThread.run (HandlerThread.java:67)
Type
"WM.task-1" prio=5 tid=27 Waiting
  at sun.misc.Unsafe.park (Native method)
  at java.util.concurrent.locks.LockSupport.park (LockSupport.java:190)
  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await (AbstractQueuedSynchronizer.java:2067)
  at java.util.concurrent.LinkedBlockingQueue.take (LinkedBlockingQueue.java:442)
  at java.util.concurrent.ThreadPoolExecutor.getTask (ThreadPoolExecutor.java:1092)
  at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1152)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:641)
  at java.lang.Thread.run (Thread.java:923)
Type
"ConnectivityThread" prio=5 tid=28 Native
  #00  pc 00000000000d8f28  /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8)
  #00  pc 0000000000019d88  /system/lib64/libutils.so (android::Looper::pollInner(int)+184)
  #00  pc 0000000000019c68  /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+112)
  #00  pc 00000000001185e4  /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
  at android.os.MessageQueue.nativePollOnce (Native method)
  at android.os.MessageQueue.next (MessageQueue.java:335)
  at android.os.Looper.loop (Looper.java:206)
  at android.os.HandlerThread.run (HandlerThread.java:67)
Type
"WM.task-2" prio=5 tid=29 Waiting
  at sun.misc.Unsafe.park (Native method)
  at java.util.concurrent.locks.LockSupport.park (LockSupport.java:190)
  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await (AbstractQueuedSynchronizer.java:2067)
  at java.util.concurrent.LinkedBlockingQueue.take (LinkedBlockingQueue.java:442)
  at java.util.concurrent.ThreadPoolExecutor.getTask (ThreadPoolExecutor.java:1092)
  at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1152)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:641)
  at java.lang.Thread.run (Thread.java:923)
Type
"WM.task-3" prio=5 tid=30 Waiting
  at sun.misc.Unsafe.park (Native method)
  at java.util.concurrent.locks.LockSupport.park (LockSupport.java:190)
  at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await (AbstractQueuedSynchronizer.java:2067)
  at java.util.concurrent.LinkedBlockingQueue.take (LinkedBlockingQueue.java:442)

What Android versions and devices are seeing this ANR?

Android 10 (SDK 29) 246 37.60%
Android 11 (SDK 30) 152 23.20%
Android 9 (SDK 28) 122 18.60%
Android 7.1 (SDK 25) 55 8.40%
Android 8.1 (SDK 27) 34 5.20%
Android 8.0 (SDK 26) 25 3.80%
Android 5.1 (SDK 22) 10 1.50%
Android 7.0 (SDK 24) 7 1.10%
Android 6.0 (SDK 23) 4 0.60%

How many users, and what percent of users are getting this?

650 occurrences across 471 users. This is one of the top ANRs caused by OneSignal in our app.

russell-kondaveti avatar Jul 06 '22 01:07 russell-kondaveti