Back

Friday, 5 May 2023 | 11:25 | Author by Arif Madya

Introducing .NET MAUI: An Easy-to-Use Multi-Platform Application Development Framework

.NET MAUI (Multi-platform App UI) is an open-source multi-platform application development framework that allows developers to create mobile, desktop, and web applications using the C# and XAML programming languages. Developers who have used Xamarin will certainly be quite familiar with this framework. .NET MAUI is an evolution of Xamarin.Forms and is intended to facilitate the development of multi-platform applications.

This framework was available almost a year ago, launched in May 2022 to be precise. At the beginning of its release, .NET MAUI still supported .NET 6. Along with the launch of .NET 7 in November 2022, Microsoft provided several additional features and performance improvements for .NET MAUI on .NET 7 such as smaller app size on iOS, improved startup performance on Android, optimizing the rendering path for views, and several other additional features.


.NET MAUI Display

.NET MAUI uses technologies from Xamarin and .NET, which have been popular choices for mobile app developers for years. With .NET MAUI, developers can create applications using a single set of source codes that can be used on multiple platforms such as Android, iOS, macOS, and Windows.


How .NET MAUI Works

The .NET MAUI brings together the APIs of different platforms into a single API, allowing developers to write code that interacts with the .NET MAUI API. This framework uses the .NET runtime to provide an execution environment for code and provides a .NET Base Class Library (BCL) which abstracts away the details of the underlying platform. While BCL allows applications running on different platforms to share common business logic, different platforms have different ways of defining the user interface for applications.


Radya Digital project that uses .NET MAUI

In .NET MAUI, developers write code primarily interacting with the .NET MAUI API, and this framework directly uses native platform APIs. In addition, application code can directly run platform APIs if needed. The resulting .NET MAUI applications can be written on a PC or Mac and compiled into native application packages for Android, iOS, macOS, and Windows.


Features of .NET MAUI

One of the main features of .NET MAUI is the ability to create applications on all platforms, using a single framework. This is because this framework provides the same standard set of controls and layouts on every platform. The following are the features of .NET MAUI:

  • Single Project
    With the single project feature, developers can create the same application for all platforms without the need to create separate projects for each platform. This can help developers save time and effort in creating multi-platform applications.

  • Hot Reload
    Developers can modify source code and XAML files dynamically while the app is running, without having to recompile. This speeds up the development process and allows developers to quickly test and change UI designs, without having to review navigation or data. Hot reload and XAML hot reload support on .NET MAUI makes the development process more efficient and productive.

  • Cross-platform APIs
    .NET MAUI provides cross-platform APIs that allow developers to access native device features on multiple platforms. The features provided include access to sensors, checking network status, device information, copy-paste, selecting and saving files, text-to-speech, and browser-based authentication flow. Using cross-platform APIs speeds up the development process and enables more consistent applications across platforms.

  • Cross-platform graphics functionality
    Provides a drawing canvas that supports drawing and painting shapes and figures, compositing operations, and transforming graphic objects.

In addition, there are several other features, such as:

  • Layout engine for designing pages.
  • Multiple pages create various types of navigation, such as drawers.
  • Support for data-binding, for more elegant and maintainable development patterns.
  • Ability to customize handlers to improve the way UI elements are presented.


Supported platforms for .NET MAUI applications

.NET MAUI applications can be written for the following platforms:

  • Android 5.0 (API 21) or higher
  • iOS 11 or higher, using the latest release of Xcode
  • macOS 10.15 or higher, using Mac Catalyst
  • Windows 11 and Windows 10 version 1809 or higher, using Windows UI Library (WinUI) 3


Meanwhile, the Blazor .NET MAUI application has the following additional platform requirements:

  • Android 7.0 (API 24) or higher
  • iOS 14 or higher
  • macOS 11 or higher, using Mac Catalyst
  • Requires updated platform-specific WebView controls


In conclusion, as a new multi-platform application development platform from Microsoft. .NET MAUI enables developers to create applications that can run on Android, iOS, macOS, and Windows by using the same set of source code and UI. Features of .NET MAUI, such as Single project, Hot Reload, Cross-platform APIs, etc. can help developers develop multi-platform applications more easily, quickly, and efficiently.

In addition, .NET MAUI also provides support for web, desktop, and mobile applications, so that developers can use this platform to develop various types of multi-platform applications. Thus, .NET MAUI can be an attractive choice for developers to develop multi-platform applications easily and efficiently. For further consultation in making applications using ML.NET, please contact our team at this link.


Source: