-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Open
Description
Problem Description
We are experiencing abrupt application terminations (SIGABRT) in production on Android for an application built with .NET 10 (Release). The process exits without any managed C# exception due to an internal Mono runtime assertion.
Reported error:
Assertion at /mono/metadata/jit-info.c:918,
condition `!ji->async` not met
The runtime explicitly calls abort() via xamarin::android::Helpers::abort_application, causing the app to terminate immediately.
Environment
- Framework: .NET 10.0
- Configuration: Release
- Architecture: arm64-v8a
- Platform: Android
- Distribution: Google Play (Production)
Affected Devices / OS
- Devices: Xiaomi / Redmi models (e.g., Redmi Note series)
- SoC: Predominantly MediaTek
- Android versions: 13 (SDK 33), 14 (SDK 34), 15 (SDK 35)
No comparable crashes have been observed so far on Samsung or Google Pixel devices.
Stack Trace (excerpt)
* Assertion at /__w/1/s/src/runtime/src/mono/mono/metadata/jit-info.c:918,
condition `!ji->async' not met
pid: 0, tid: 8117 >>> com.companyname.biliApp <<<
#00 libc.so (abort+164)
#01 libmono-android.release.so
xamarin::android::Helpers::abort_application(...)
Observed Behavior
- Occurs only in Release builds
- Not reproducible in Debug or emulators
- No managed stack trace or catchable .NET exception
- The failure happens inside the Mono runtime before control returns to application code
Questions
- Is this assertion (
jit-info.c:918,!ji->async) a known issue in the Mono runtime / JIT for .NET 10 Android ARM64? - Are there any recommended configuration flags or workarounds (runtime/JIT/AOT/trimming-related) to avoid this type of abort in Release builds?
- Is there awareness of similar issues on MediaTek-based devices, or plans for a service release addressing this behavior?
Thank you for any guidance you can provide.
Reactions are currently unavailable