Android framework version
net10.0-android
Affected platform version
Vs2026 net10
Description
We are seeing a significant increase in ANRs after moving our Android app from .NET 9 to .NET 10.
The same application and usage pattern appears stable on .NET 9, but when targeting .NET 10 we start receiving frequent ANR reports in Google Play Console.
Important detail:
Crashlytics does not report corresponding fatal crashes. The app appears to freeze / become unresponsive rather than crash with an uncaught exception.
Observed behavior:
- .NET 9 Android build: ANRs are gone or extremely rare
- .NET 10 Android build: ANRs return frequently
- Same app logic
- Same user workflow
- Same devices / customers
- No matching Crashlytics crashes
ANR traces often include native/runtime/GC related frames such as:
- art::gc::collector::ConcurrentCopying
- Runtime.gc
- libart.so
- Android Runtime / GC activity
App context:
- Android POS / hospitality application
- Built with C# / .NET for Android
- Uses multiple Activities
- Heavy UI rendering in some screens
- Uses FFImageLoading / SVG image rendering and caching
- ANRs appear sporadic, not always reproducible locally
We already tested disabling several build/runtime optimizations:
false
None
false
false
These changes did not eliminate the ANRs in .NET 10.
Additional observations:
- Adding more awaits / avoiding synchronous UI-heavy operations reduced ANRs, but did not fully explain the difference between .NET 9 and .NET 10.
- The strongest signal is that .NET 9 behaves normally while .NET 10 produces ANRs under similar real-world usage.
Could there be a runtime / GC / Android workload regression in .NET 10 that could cause longer stalls or ANRs compared to .NET 9?
What diagnostic information would be most useful for us to provide?
Steps to Reproduce
- Build and deploy the application using .NET 10 for Android in Release mode.
- Use the application under normal production workload:
- frequent Activity navigation
- image rendering
- SVG/image caching
- async network/database operations
- Leave the application running during real-world usage for extended periods.
- After some time, Android starts reporting ANRs in Google Play Console.
Observed result:
- ANRs occur sporadically
- ANR traces frequently contain GC/runtime related frames:
- art::gc::collector::ConcurrentCopying
- Runtime.gc
- libart.so
- Firebase Crashlytics does not report matching fatal crashes.
Important comparison:
- Rebuilding the same application on .NET 9 significantly reduces or eliminates the ANRs under the same workload and devices.
Did you find any workaround?
No response
Relevant log output
Most of errors contains Mediatek MT6769 processor
error1.txt
error2.txt


Android framework version
net10.0-android
Affected platform version
Vs2026 net10
Description
We are seeing a significant increase in ANRs after moving our Android app from .NET 9 to .NET 10.
The same application and usage pattern appears stable on .NET 9, but when targeting .NET 10 we start receiving frequent ANR reports in Google Play Console.
Important detail:
Crashlytics does not report corresponding fatal crashes. The app appears to freeze / become unresponsive rather than crash with an uncaught exception.
Observed behavior:
ANR traces often include native/runtime/GC related frames such as:
App context:
We already tested disabling several build/runtime optimizations:
false None false falseThese changes did not eliminate the ANRs in .NET 10.
Additional observations:
Could there be a runtime / GC / Android workload regression in .NET 10 that could cause longer stalls or ANRs compared to .NET 9?
What diagnostic information would be most useful for us to provide?
Steps to Reproduce
Observed result:
Important comparison:
Did you find any workaround?
No response
Relevant log output
Most of errors contains Mediatek MT6769 processor
error1.txt


error2.txt