AltBeacon / android-beacon-library

Allows Android apps to interact with BLE beacons
Apache License 2.0
2.84k stars 836 forks source link

ANR observed #1012

Closed PrashantMishra-Zebra closed 3 years ago

PrashantMishra-Zebra commented 3 years ago

Expected behavior

ANR should not be observed

Actual behavior

ANR is observed

Steps to reproduce this behavior

Start beacon scanning and stop beacon scanning repeatedly for 3 days.

Mobile device model and OS version

Device: Zebra TC72 OS: Android Oreo

Android Beacon Library version

2.15.4 trace_00.txt Main0.txt

IMPORTANT: This forum is reserved for feature requests or reproducible bugs with the library itself. If you need help with using the library with your project, please open a new question on StackOverflow.com.

davidgyoung commented 3 years ago

@PrashantMishra-Zebra, why do you think the library caused this ANR? I do see from the crash log in trace_00.txt that the library was in use and that there are at least two threads performing library operations when the crash happens. However, there are several other threads running that are not executing code from this library, including UI rendering threads, a Firebase thread.

Android fires an ANR if the main thread is blocked too long. The trace_00.txt clearly shows that it was garbage collection blocking the main thread. Several threads of this library were also blocked by garbage collection (as were Firebase and other threads) but this is a symptom of and not a cause of the ANR.

"pool-103-thread-6" prio=5 tid=57 WaitingPerformingGc
  | group="main" sCount=1 dsCount=0 flags=1 obj=0x12d4fc10 self=0x794d5f7c00

I am going to close this issue because it does not appear this ANR was caused by this library. If you have reason to believe the library is the cause of garbage collection being blocked, please add that info.