On May 1, 2024, Microsoft will end support for Xamarin, its multi-platform development framework.
This does not mean Microsoft is abandoning this development approach; rather, it signifies a unification under .NET and a commitment to a new framework, MAUI.
Here are some answers to common questions that may arise with this change.
If you find the content too technical but know that you use this technology in your applications, please proceed to the end of the article where you can request contact from DXspark, and we will help identify the best solution for your situation.
What is .NET MAUI?
-
.NET MAUI (Multi-platform App UI) directly replaces Xamarin Forms as the framework for creating multi-platform applications sharing a single codebase.
-
The business logic is shared, developed once in C# and compatible across all platforms and operating systems supported.
-
The user interface is also part of this shared codebase, developed once using Microsoft technologies and tailored to the operating systems it runs on.
What will happen to Xamarin Native?
For applications developed in Xamarin Native (without using Xamarin Forms), Xamarin Native is the component common to all Xamarin developments, allowing a single .NET codebase for multi-platform application development. Xamarin Forms is the additional component that also allows the creation of user interfaces in shared code.
In summary, Xamarin Native will no longer exist as a separate framework, and all this capability to create software for various supported platforms will be included in the latest versions of .NET, starting with .NET 6.
What does this end of support mean for applications already published on the App Store and Play Store?
These applications will continue to be available in their respective stores, following the rules of Google and Apple to which we are already accustomed.
At the level of updates, it should still be possible to make them without any change to the Xamarin platform used by the application, as long as the respective versions of the operating system, iOS or Android, are supported by the stores.
Translating to dates
-
For iOS, following the pattern of updates from Apple to date, the supported version from April 2024 will be iOS 17, the last version fully supported by Xamarin is iOS 16. As such, the ideal date for updates will be before April 2024.
-
For Android, following the pattern of updates from Google to date, the supported version from August 2024 will be Android 14, the last version fully supported by Xamarin is Android 13. As such, the ideal date for updates will be before August 2024.
What are the risks of not migrating in time?
-
Any error to be corrected, or new functionality to be introduced in an app, may require migration before new versions can be launched in the stores, even running the risk of taking weeks until critical corrections are implemented.
-
Any security flaw or error detected in the Xamarin platform or the underlying operating systems (iOS and Android) will not be corrected by the Xamarin team after support ends on May 1, 2024, leaving applications vulnerable. Therefore, our suggestion for the migration deadline is May 1, 2024.
What does this migration involve?
With the end of support for Xamarin.iOS and Xamarin.Droid, to continue developing multi-platform applications with .NET, it will be necessary to migrate to .NET version 6 or later.
What was once separate (Windows, Android, iOS, etc.) will now be supported together in the new versions of .NET in a single unified framework.
In addition to validating all changes to the .NET framework itself and making the necessary adjustments, much effort will be spent identifying libraries that will no longer be supported or have not yet been updated, and finding the ideal alternative for them.
We recommend conducting comprehensive tests on applications after a significant update.
For Xamarin Forms applications, this also involves migrating the user interface from Xamarin Forms to MAUI. Compatibility is extensive, and Microsoft even provides a tool to facilitate this migration.
However, some changes may be necessary to ensure that the application remains unchanged and to minimize impact on end users. It is also important to conduct UI tests on this migration to ensure it was successful.
How can we help?
DXspark has a decade of experience in Xamarin development, extensive expertise in Microsoft technologies, with a high number of Microsoft Certifications on the team, and a portfolio of dozens of Android and iOS applications developed using Xamarin or its native languages.
This experience makes DXspark the preferred partner to advise on constructing the migration plan for each application and executing it efficiently.