.NET Multi-Platform App UI (MAUI)

Eintrag zuletzt aktualisiert am: 06.10.2021

Ankündigung auf der Microsoft BUILD-Konferenz Mai 2020.

Die plattformneutrale Oberflächenbeschreibungsbibliothek "Xamarin Forms" will Microsoft im Rahmen von .NET 6.0 erheblich weiterentwickeln und zukünftig unter dem Namen ".NET Multi-Platform App UI" (.NET MAUI) vermarkten. Xamarin Forms unterstützte ursprünglich iOS, Android und Windows. Durch Community-Projekte wurde Xamarin Forms auf macOS und Linux ausgedehnt. Die Firma Samsung liefert eine Implementierung für ihr Tizen-Betriebssystem.

Trotz des Namens wird auch beim kommenden .NET MAUI Microsoft weiterhin nicht alle heute weit verbreiteten Betriebssysteme unterstützen, sondern nur Windows, macOS, iOS und Android. Der Linux-Desktop bleibt explizit außen vor – Microsoft will es der Community überlassen, hierfür einen Renderer bereitzustellen. Für das Betriebssystem Tizen soll Samsung wie bisher schon für Xamarin Forms eine Implementierung liefern.

Auf der GitHub-Seite von Xamarin Forms [https://github.com/xamarin/Xamarin.Forms] findet heute schon Community-Implementierungen von Xamarin Forms auf Basis von WPF und GTK#, die einen Betrieb von Xamarin Forms-basierten auf Desktop-Betriebssystemen ermöglichen. Allerdings zeigt der Entwicklungsstatus [https://github.com/xamarin/Xamarin.Forms/wiki/Platform-Support], das diese Implementierungen unvollständig sind.

Namensräume

XAML-Namensraum: http://schemas.microsoft.com/dotnet/2021/maui
.NET-Namensraum: Microsoft.Maui

Erneut vertagt - Erscheinen erst Mitte 2022

Mit Hinweis auf die Pandemie vertagte Microsoft die Zusammenführung zu "One .NET" auf .NET 6. Hier sollte die Mono-Runtime und die darauf aufbauenden Xamarin-Apps in den modernen .NET-Entwicklungszweig integriert werden. Neue Namen wurden vergeben: die plattformspezifischen Teile von Xamarin sollten fortan .NET for iOS und .NET for Android hießen. Der Nachfolger der Cross-Platform-Lösung Xamarin Forms wurde .NET Multi-Platform App UI (.NET MAUI) getauft.

Im September 2021 gab es dann jedoch die Ankündigung, dass die Xamarin-Nachfolger auf das zweite Quartal 2022 vertag sind. Ob es dann ein ".NET 6.1" oder einen anderen Namen geben wird, ist noch nicht bekannt. Wohl sicher ist aber, dass zumindest in der ersten integrierten Version der Linux-Desktop nicht als Platform unterstützt sein wird. Dies bezieht sich wohlgemerkt nur auf den Desktop unter Linux. In .NET 6 kann man wie in den "Core"-Vorgängern Konsolen- und Webanwendungen unter Linux betreiben.