Warum die Migration von Xamarin auf .NET MAUI jetzt ansteht
Xamarin bekommt keine Updates mehr. .NET MAUI übernimmt dieselbe C#-Basis, aber mit einem Projekt, Handlern statt Renderern und aktuellem .NET.
Microsoft hat den Support für Xamarin am 1. Mai 2024 beendet. Neue iOS- und Android-SDKs, Store-Vorgaben und Sicherheitsfixes laufen nicht mehr über Xamarin.Forms oder Xamarin.Native.
.NET MAUI (Multi-platform App UI) ist der vorgesehene Nachfolger. Eine Codebasis deckt iOS, Android und bei Bedarf Windows sowie macOS ab. Für Teams mit C#, ASP.NET Core oder Azure bleibt der Stack damit im Haus.
Quelle: Microsoft Support Policy für Xamarin, Support-Ende 1. Mai 2024. Die technische Einordnung der Altplattform steht auf der Seite Xamarin. Die Migration selbst liefern wir als eigene Leistung aus Leer, Made in Germany.
Was sich zwischen Xamarin.Forms und .NET MAUI ändert
Ein Namespace-Tausch reicht nicht. Die Architektur wechselt vom Mehrprojekt-Modell zu einem MAUI-Single-Project. Diese Punkte prüfen wir in jeder Bestandsaufnahme:
- Eigene Renderer werden zu Handlern. Jedes Custom Control braucht einen Abnahmetest.
- Xamarin.Essentials wandert in die MAUI-APIs. Aufrufe für Kamera, Dateien und Standort werden angepasst.
- NuGet-Pakete ohne MAUI-Ziel ersetzen wir oder kapseln sie hinter einer schmalen Schnittstelle.
- Getrennte iOS- und Android-Projekte gehen in plattformspezifische Ordner des einen Projekts über.
- Das Ziel-Framework ist aktuelles .NET, nicht das alte Xamarin-Mono-Profil.
Die gemeinsame Cross-Platform-Logik bleibt der Grund, im Microsoft-Stack zu bleiben. UI-Sonderfälle für iOS und Android lösen wir gezielt, nicht durch eine zweite App.
So läuft die Migration ab
1. Bestandsaufnahme der Xamarin-Lösung
Wir lesen Projekte, Ziel-Frameworks, NuGet-Stand und eigene Controls. Dazu kommen Store-Konten, Signatur und die Frage, welche Flows geschäftskritisch sind. Das Ergebnis ist eine Liste: übernehmen, umbauen, ersetzen.
2. Zielbild in .NET MAUI
Wir legen die .NET-Version, das Single-Project und die Handler-Strategie fest. Geschäftslogik wandert in Bibliotheken, die Alt- und Neu-App eine Zeit lang gemeinsam nutzen können. So bleibt ein Rollback möglich.
3. Modulweise UI und Gerätezugriff
Screens und Gerätefunktionen ziehen wir in Scheiben um: Login, Offline-Daten, Push, Bluetooth. Jede Scheibe hat Akzeptanzkriterien aus der bestehenden App. Abweichungen fallen in der Testversion auf, nicht erst im Store.
4. Store-Release und Hypercare
TestFlight und Play-Teststrecken laufen parallel zur Xamarin-Version. Erst nach fachlicher Freigabe ersetzen wir das Store-Paket. Die ersten Wochen nach dem Release gehören zur Leistung, inklusive Crash-Auswertung.
.NET MAUI, Flutter oder ein Neubau
.NET MAUI ist der wirtschaftliche Weg, wenn viel C# schon stimmt. Ein Wechsel zu Flutter oder React Native ist ein Neubau der Oberfläche und oft auch der Client-Logik. Das lohnt sich, wenn das Design-System neu soll oder kein .NET-Team die App weiterpflegt.
Neue mobile Produkte ohne Xamarin-Bestand planen wir in der App-Entwicklung. Desktop-Ziele mit demselben Stack gehören zur Desktop-Software. Liegt neben der App noch anderes Alt-System, bleibt die Legacy-Modernisierung der übergeordnete Rahmen.
Beispiel: Smart-Home-App von Xamarin auf .NET MAUI
Die ESYLUX Smart Home App haben wir fortgeführt und von Xamarin auf .NET MAUI migriert. Beleuchtung und Automatisierung, Projekte und Geräte bleiben bedienbar. Bluetooth und WLAN laufen über die neue Basis, ohne die bestehende Nutzerführung zu verwerfen.
Der Ablauf steht in der Referenz ESYLUX Smart Home App. Ähnliche Geräte-Apps mit .NET im Backend folgen demselben Schnitt: Bibliotheken zuerst, UI danach, Store zuletzt.
Aufwand und nächster Schritt
Die Investition legen wir nach der Bestandsaufnahme als Festpreis-Meilensteine fest. Eine komplette Neuauflage ordnet der Kostenrechner für App-Entwicklung ein. Eine Migration bleibt schlanker, solange C#-Logik, Modelle und API-Clients erhalten bleiben. Erfahrungswerte der Groenewold IT Solutions: schlanke Forms-Apps oft in Wochen, Apps mit Eigen-UI und Geräteprotokollen in mehreren Monaten.
Im ersten Gespräch reichen Repository-Zugriff oder eine Architektur-Skizze, die Store-Namen und die Liste der kritischen Flows. Daraus wird ein Schnitt: was in .NET MAUI weiterlebt und was neu gebaut werden muss.








