Welcome to the Sands of MAUI—newsletter-style issues dedicated to bringing together latest .NET MAUI content relevant to developers.
A particle of sand—tiny and innocuous. But put a lot of sand particles together and we have something big—a force to reckon with. It is the smallest grains of sand that often add up to form massive beaches, dunes and deserts.
Most .NET developers are excited with .NET Multi-platform App UI (MAUI)—the evolution of modern .NET cross-platform developer experience. Going forward, developers should have much more confidence in the technology stack and tools as .NET MAUI empowers native cross-platform solutions on both mobile and desktop.
While it may take a long flight to reach the sands of MAUI island, developer excitement around .NET MAUI is quite palpable in all the shared content. Like the grains of sand, every piece of news/article/documentation/video/tutorial/livestream contributes towards developer knowledge in .NET MAUI and we grow a community/ecosystem willing to learn & help.
Sands of MAUI is a humble attempt to collect all the .NET MAUI awesomeness in one place. Here's what is noteworthy for the week of September 19, 2022:
.NET MAUI is the evolution of modern .NET cross-platform technology stack, allowing developers to have a true single shared codebase to power native mobile/desktop apps. .NET MAUI has been production-ready for a while and tooling is top notch as well—it is understandable why lot more developers are giving .NET MAUI a spin. James Montemagno is here to help, with an epic .NET MAUI tutorial video aimed at beginners—let's build iOS, Android, macOS and Windows apps with C# and Visual Studio.
James starts with the basics—the history with Xamarin and the promise of .NET MAUI going forward. Then the rubber meets the road—how developers get started with .NET MAUI on Visual Studio 2022, exploring the single project structure, app startup, app lifecycle and the shell. Developers want instant gratification—James covers the nuances of deploying to iOS, Android, Windows or MacOS, on both emulators and devices.
The developer inner loop benefits big time in .NET MAUI with tooling around Hot Reload and Live Preview. James goes on to cover must-know topics like app navigation, access to platform APIs and styling/theming of .NET MAUI apps. If there was ever a video that developers from zero to hero with .NET MAUI, this is it—thanks James.
Pew Pew! That's the sound played by your .NET MAUI app/game where space drones shoot down the bad guys. If developers have a need play a simple sound effect or a song in .NET MAUI apps, the Plugin.Maui.Audio plugin is here to help. It's simple to use and well engineered for developer flexibility.
Gerald starts out how developers can bring in Plugin.Maui.Audio in .NET MAUI apps—just a simple NuGet package dependency. Plugin.Maui.Audio follows the built-in dependency injection paradigm and an extension method on .NET MAUI startup wires up all the things. One configured, developers can grab an instance of the audio player and point to a local/remote sound file—voila, the sound of music.
Gerald also explores the Plugin.Maui.Audio API—there is beauty in simplicity. Developers can create single or multiple instances of Plugin.Maui.Audio, but with an IDisposable interface implementation, it is always good to dispose the audio player when not needed. There is a full-featured sample app in the Plugin.Maui.Audio repository showcasing the plugin features and developer feedback is sought as the audio plugin moves forward being the de-facto way of playing audio in .NET MAUI apps.
.NET 7 is the next evolution of .NET—it is destined to be ready for release in Nov 2022 and has been in the works for a while now. After seven Preview builds, it's time for the first of the two Release Candidates (RC) builds—.NET 7 RC1 is now out.
The latest .NET 7 is available for Windows/MacOS/Linux and supported for production apps. .NET 7 RC1 has been tested on the latest Visual Studio 17.4 Preview 2 and includes updates across various focus areas—like Cloud Native, ARM64 support and enabling app modernization.
.NET MAUI is scheduled to get a big dose of updates with .NET 7—lots of features for Desktop apps and productivity boost for developers through tooling. The best Visual Studio experience to try out the latest .NET MAUI features with .NET 7 is not quite ready though—it's all coming very soon with the upcoming Visual Studio 17.4 Preview 2.1 release.
Like most other .NET apps, .NET MAUI will automatically benefit from the huge performance improvements coming in .NET 7—there are big impact upgrades in Reflection, Stack Replacement, Start-up time, Native AOT, loop optimizations and many more areas. .NET MAUI is a part of .NET and major releases align with .NET—the future of cross-platform .NET development is looking good.
.NET MAUI apps run native on latest mobile/desktop platforms and demand solid user experience across platforms. Developers don't need fight the uphill challenge alone—there is help from Telerik UI for .NET MAUI. Out of the box, developers get the best of Telerik UI on .NET MAUI—a large collection of well-engineered performant and beautiful UI components that work consistently across platforms.
Telerik UI for .NET MAUI gets a big dose of updates as a part of the R3 release—Yoan Krumov wrote up all that's new in Telerik UI across mobile and desktop suites.
There is no dearth of love for traditional desktop Telerik UI—there are lots of updates in UI suites for WinUI, WPF and WinForms. Xamarin is still the production reality for many apps and Telerik UI for Xamarin gets major updates for DataGrid, Pickers and feature enhancements across the board.
Telerik UI for .NET MAUI gets the most love, however, along with support for latest .NET MAUI runtime and Visual Studio 2022. Telerik UI for .NET MAUI now ships with three brand-new UI controls as a part of a growing suite—DataForm, AutoComplete and Expander components join the family. The powerful DataGrid in Telerik UI for .NET MAUI gains features like Grouping UI, Footers, Aggregate functions and more.
Developers building native cross-platform apps with .NET MAUI should now have all the UI/UX ammunition needed with Telerik UI for .NET MAUI—let's go build some delightful apps.
Firebase is a popular cloud-based app development platform—to build/distribute/monitor apps and boost user engagement. Backed by Google Cloud, Firebase is known for easy Cloud Messaging integration and is particularly well-suited to act as a backend for modern mobile apps.
Turns out, cross-platform mobile apps written with .NET MAUI can benefit from Firebase integration as well—Cedric Gabrang wrote up an article on how to enable Firebase Push Notifications in .NET MAUI apps.
The first step is to install the Plugin.Firebase NuGet package in a .NET MAUI app project. It is good to know that the Firebase plugin does not support Windows/MacOS yet—so the .NET MAUI apps would need to be for iOS/Android only for now and unsupported TargetFrameworks need to be removed from .csproj file. Cedric shows off how to setup the project in Firebase Console, configure settings and initialize Firebase in .NET MAUI app startup. After app permissions are set, Firebase's device identifying token can be retrieved and voila—.NET MAUI apps are ready for Firebase integration.
Cedric demonstrates a .NET MAUI app receiving Push Notifications triggered from the Firebase Console—cheers to the in-depth article and opening the Firebase floodgates for .NET MAUI developers.
That's it for now.
We'll see you next week with more awesome content relevant to .NET MAUI.
Sam Basu is a technologist, author, speaker, Microsoft MVP, gadget-lover and Progress Developer Advocate for Telerik products. With a long developer background, he now spends much of his time advocating modern web/mobile/cloud development platforms on Microsoft/Telerik technology stacks. His spare times call for travel, fast cars, cricket and culinary adventures with the family. You can find him on the internet.
Subscribe to be the first to get our expert-written articles and tutorials for developers!