Description
Steps to reproduce
Firebase Crashlytics and Google Play reported that I am getting a lot of ANR's. It was much more higher in v3.29.0 and after upgrade I am continuing to get ANR's. Following ANR's happened on Flutter v3.32.1. App used more then 100k devices so I have wide range of device and chipsets.
Expected results
Working without ANRs
Actual results
Getting ANR's around %1.3 which is way above Google Play ANR bad behaviour threshold (%0.47). This may cause the apps written in Flutter will be much less visible according to Google Play.
And I look it up. It is not just my app a lot of Flutter devs facing same issue/issues.
Code sample
I don't think it is about my code because ANR's happens mostly same device, chipsets etc.
Screenshots or Video
Logs
Logs
ANR 1: android.os.MessageQueue.nativePollOnce - Root cause for this ANR is unknown
As far as I can see this error happens on "Transsion" devices mostly.
main (native):tid=1 systid=8185
#00 pc 0x88e1c libc.so (syscall + 28) (BuildId: 21cd09af0ad2ccf35d6b8ba2d064b3c4)
#01 pc 0x22a29c libart.so (art::ConditionVariable::WaitHoldingLocks + 136) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92)
#02 pc 0x73c008 libart.so (art::JNI<false>::FindClass + 1580) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92)
#03 pc 0x127a1c libandroid_runtime.so (android::NativeDisplayEventReceiver::dispatchVsync + 92) (BuildId: 6d76667b78a11a4ca53e8e1d62a49516)
#04 pc 0xb7b34 libgui.so (android::DisplayEventDispatcher::handleEvent + 276) (BuildId: 60bcf7a3168cc57bdd0bb228e86a9621)
#05 pc 0x18224 libutils.so (android::Looper::pollInner + 1060) (BuildId: 10aac5d4a671e4110bc00c9b69d83d8a)
#06 pc 0x17da0 libutils.so (android::Looper::pollOnce + 112) (BuildId: 10aac5d4a671e4110bc00c9b69d83d8a)
#07 pc 0x162cdc libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce + 44) (BuildId: 6d76667b78a11a4ca53e8e1d62a49516)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loopOnce(Looper.java:161)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:8115)
at java.lang.reflect.Method.invoke(Native method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:703)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911)
ANR 2: android.os.MessageQueue.nativePollOnce - Root cause for this ANR is unknown
This error look like ANR1 but crashlytics says it is different and happen different devices.
main (native):tid=1 systid=7666
#00 pc 0x91380 libc.so (syscall + 32) (BuildId: 1e3ca19bcae05c01b019c85f3f422e56)
#01 pc 0x22a29c libart.so (art::ConditionVariable::WaitHoldingLocks + 136) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92)
#02 pc 0x993b28 libart.so (artJniMethodEnd + 344) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92)
#03 pc 0x787a3c libart.so (art_jni_method_end + 12) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:341)
at android.os.Looper.loopOnce(Looper.java:176)
at android.os.Looper.loop(Looper.java:318)
at android.app.ActivityThread.main(ActivityThread.java:8727)
at java.lang.reflect.Method.invoke(Native method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:561)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)
ANR 3: android.os.MessageQueue.nativePollOnce - Root cause for this ANR is unknown
Again different bug. Happen in different devices.
main (native):tid=1 systid=25660
#00 pc 0x4170e6 split_config.armeabi_v7a.apk!libflutter.so + 11452416
#01 pc 0x61fe [anon:libc_malloc]
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:8097)
at java.lang.reflect.Method.invoke(Native method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:620)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1011)
Flutter Doctor output
Doctor output
[√] Flutter (Channel stable, 3.32.1, on Microsoft Windows [Version 10.0.26100.4061], locale en-US) [426ms]
• Flutter version 3.32.1 on channel stable at C:\FlutterSDK
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision b25305a883 (9 days ago), 2025-05-29 10:40:06 -0700
• Engine revision 1425e5e9ec
• Dart version 3.8.1
• DevTools version 2.45.1
[√] Windows Version (11 Pro 64-bit, 24H2, 2009) [1,511ms]
[√] Android toolchain - develop for Android devices (Android SDK version 36.0.0) [2.2s]
• Android SDK at C:\AndroidSDK
• Platform android-36, build-tools 36.0.0
• ANDROID_HOME = C:\AndroidSDK
• ANDROID_SDK_ROOT = C:\AndroidSDK
• Java binary at: C:\Program Files\Android\Android Studio\jbr\bin\java
This is the JDK bundled with the latest Android Studio installation on this machine.
To manually set the JDK path, use: `flutter config --jdk-dir="path/to/jdk"`.
• Java version OpenJDK Runtime Environment (build 21.0.6+-13368085-b895.109)
• All Android licenses accepted.
[√] Chrome - develop for the web [94ms]
• Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe
[√] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.9.0) [93ms]
• Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
• Visual Studio Community 2022 version 17.9.34607.119
• Windows 10 SDK version 10.0.22621.0
[√] Android Studio (version 2024.3.2) [27ms]
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• android-studio-dir = C:\Program Files\Android\Android Studio
• Java version OpenJDK Runtime Environment (build 21.0.6+-13368085-b895.109)
[√] VS Code (version 1.86.0) [25ms]
• VS Code at C:\Users\USERNAME\AppData\Local\Programs\Microsoft VS Code
• Flutter extension can be installed from:
https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[√] Connected device (4 available) [363ms]
• OMIX X500 (mobile) • X500S22053067 • android-arm64 • Android 11 (API 30)
• Windows (desktop) • windows • windows-x64 • Microsoft Windows [Version 10.0.26100.4061]
• Chrome (web) • chrome • web-javascript • Google Chrome 137.0.7151.69
• Edge (web) • edge • web-javascript • Microsoft Edge 136.0.3240.92
[√] Network resources [439ms]
• All expected network resources are available.
• No issues found!