Microsoft MAUI Release Candidate is now available & what it means for your Xamarin Apps
Microsoft announced the Release Candidate for MAUI, the next evolution of their framework for cross-platform development. The term “Release Candidate” means that this version is ready for production use and the APIs are stable. This is an exciting step for Xamarin developers as Microsoft has released some amazing new features and enhancements.
MAUI provides an improved developer experience for building native mobile apps using Xamarin.Forms, and will be delivered together with Xamarin.Forms in a single package on NuGet. The cross-platform frameworks will be upgraded to .NET 6, bringing all the .NET 6 benefits to MAUI development. Mobile apps can leverage features like desktop and OTA deployment with MSIX and Graphical Identification and Authentication (GINA). This is a big step forward for developers looking to deploy their apps to multiple platforms without having to start coding from scratch.
So, what exactly is MAUI?
Multi-platform App UI, or MAUI, is the new framework that will be replacing Xamarin Forms in the future. MAUI focuses on providing a consistent developer experience across all platforms. The first version of MAUI supports Windows (via WinUI 3), Android (via Xamarin.Android), and iOS (via Xamarin.iOS). This makes it very easy to build apps that target multiple platforms.
This update offers some new features including:
- XAML Hot Reload for Xamarin.Forms: With this feature, you can make changes in your app’s XAML code and see them immediately on the device or emulator.
- New Android APIs: The .NET APIs for Android now include access to many of the latest features in Android 11. You can use features like HingeAngleSensor, BubbleMetadata, and Neural Networks API Level 30 to add additional functionality to your applications.
- Performance improvements: The team behind MAUI has been working hard to improve the performance of the framework. In this release, you’ll find updates such as faster build times (around 2x) and reduced memory usage during debugging with Visual Studio 2019.
- A new installer that makes it easy to install the .NET SDK and Visual Studio previews in one step.
- A single-process model from Xamarin Native that reduces memory overhead and allows sharing code across iOS and Android.
- MAUI will ship as part of Xamarin.Forms in a single NuGet package, making it easier to install than ever before.
What does this mean for your existing Xamarin apps?
Absolutely nothing! Microsoft has made it clear that existing Xamarin apps will not be affected by this release of MAUI. Existing Xamarin developers can continue building their apps using the same tools they are using today.
With MAUI, you’ll be able to build native apps that take full advantage of each platform’s features while maintaining only one codebase. You won’t have to worry about device fragmentation or keeping up with the latest releases or updates; MAUI will help you do all of that easily.
MAUI delivers many benefits that make mobile app development easier. Here are some of the improvements you can expect when upgrading to the MAUI Release Candidate:
- – MAUI provides an improved developer experience for building native mobile apps using Xamarin.Forms.
- – MAUI unifies the Xamarin.Android and Xamarin.iOS frameworks into one single framework, so there’s no need to write duplicate code for each platform on which you want your app to run (e.g., Android and iOS).
- – MAUI and Xamarin.Forms will be delivered together in a single package on NuGet, which makes it easier to get started with new projects or upgrade existing ones—you’ll only need to install one package instead of two separate ones as you do now.
- – MAUI comes with a build system for building native apps for each platform from a single project, there is no need to learn Swift or Kotlin! It also leverages MSIX (Microsoft Installer eXecutable) to deliver over-the-air updates to users. Plus, it supports Graphical Identification and Authentication (GINA), meaning your app can now have scannable QR codes and facial recognition login options.
How does Microsoft MAUI affect Xamarin.Forms?
If you’re an experienced Xamarin developer, the learning curve should be gentle when switching over to MAUI. It’s been designed with the goal of making app development easier while maintaining backward compatibility with Xamarin.Forms. In addition to being compatible with all existing XAML code, MAUI allows you to create apps that share most of their code by default without needing additional abstraction layers or third-party plugins. It also supports hot reloading and has a built-in designer for Android and iOS that lets you see what your changes look.
The key difference between Xamarin.Forms and Microsoft MAUI is that while Xamarin.Forms was originally built to support mobile-only apps, Microsoft MAUI extends support to desktop environments such as Windows and macOS, as well as mobile devices. This means that developers who are using Xamarin.Forms should take a close look at the benefits of using Microsoft MAUI instead of Xamarin.Forms in their projects.
Xamarin.Forms will continue to support its existing .NET Standard projects using .NET 5 for all platforms (Android, iOS, macOS and Windows). These projects can be migrated to MAUI at any time in the future by simply changing the target framework to .NET 6.
MAUI will improve your Xamarin app development process by:
- Allowing you to share more code across different platforms
- Providing next-generation tooling that improves developer productivity.
- Supporting Visual Studio for Mac, and CLI.
- Offering built-in integration with .NET 6, MAUI provides the next generation of tooling for building native mobile apps in .NET.
With Microsoft MAUI, your app can gain access to native features like camera support and push notifications on iOS and Android devices. You’ll also be able to use cloud services such as Azure App Service or Azure Functions with your application in order to connect it with other systems like databases or storage solutions like Blob Storage or Azure Table Storage (this would typically require quite a bit of custom code). With Microsoft MAUI, developers can build robust mobile apps that deliver high performance while still supporting cross-platform functionality across multiple operating systems.
The future is promising for Xamarin developers, and it is only going to get better. The Microsoft MAUI team has promised a lot more in the coming months, as well as several components being added to the product that can increase productivity across all devices. Any app that is currently written in Xamarin will continue to function and evolve with new features, giving developers a strong platform to create applications for the next decade to come. And that’s exciting!