I have a bunch of ANR reports in my Google Play Console for my Flutter App. How do I figure out which line in my flutter app is causing the issue as the only line numbers I see in the report are for the Java files. Is there a way we can trace these back to the actual flutter files?
Following is a sample of the code from the ANR report:
"main" tid=1 Native
"main" prio=5 tid=1 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x753d2890 self=0x7784c14c00
| sysTid=5725 nice=-10 cgrp=default sched=0/0 handle=0x780af11550
| state=S schedstat=( 783263348209 325919126195 1054920 ) utm=51688 stm=26637 core=1 HZ=100
| stack=0x7fd6d7f000-0x7fd6d81000 stackSize=8MB
| held mutexes=
#00 pc 000000000001f2ac /system/lib64/libc.so (syscall+28)
#01 pc 00000000000d7e50 /system/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
#02 pc 0000000000333fdc /system/lib64/libart.so (art::JNI::CallObjectMethod(_JNIEnv*, _jobject*, _jmethodID*, ...)+556)
#03 pc 00000000000f896c /system/lib64/libandroid_runtime.so (android::NativeDisplayEventReceiver::dispatchVsync(long, int, unsigned int)+48)
#04 pc 0000000000050a14 /system/lib64/libandroidfw.so (android::DisplayEventDispatcher::handleEvent(int, int, void*)+164)
#05 pc 0000000000014ff8 /system/lib64/libutils.so (android::Looper::pollInner(int)+836)
#06 pc 0000000000014c18 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+60)
#07 pc 000000000012b348 /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:326)
at android.os.Looper.loop (Looper.java:190)
at android.app.ActivityThread.main (ActivityThread.java:7276)
at java.lang.reflect.Method.invoke (Native method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:575)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:903)