How We Brought CoreCLR to .NET MAUI and Mobile
The dotnet session follows a simplified Android startup path to explain where the runtime fits, then compares the compilation options available to mobile apps. It also separates the default move to CoreCLR from the additional preparation required for NativeAOT.
The runtime change in .NET 11
.NET mobile apps have used Mono since the early days of Xamarin. In .NET 11, .NET MAUI moves to CoreCLR on Android, iOS, Mac Catalyst, and tvOS.
The session uses Android startup to explain how the runtime participates in launching an application, providing context for understanding performance and compatibility when moving to .NET 11.
Compilation options and NativeAOT preparation
The session compares Mono AOT, ReadyToRun, and NativeAOT, distinguishing these compilation options from the runtime change itself.
It also explains trimming and shows how JSON source generation helps prepare an application for NativeAOT. The key distinction is that NativeAOT’s additional constraints are not the same as the default move to CoreCLR.
Performance and migration testing
The session reviews startup and app-size results from Android and iOS, then discusses what developers should test when moving to .NET 11. These comparisons provide context for evaluating application performance and investigating compatibility issues when behavior differs from expectations.
Session: BRK034