Announcing .NET MAUI in .NET 8 Preview 6: Hello VS Code & VS for Mac

David Ortinau

.NET MAUI is now available in .NET 8 Preview 6 resolving 23 high-impact issues, and introducing Native AOT for iOS. Additionally, today you can now enjoy .NET MAUI in .NET 8 using the new .NET MAUI extension for Visual Studio Code, and with the 17.6.1 release of Visual Studio for Mac.

A new .NET 7 Service Release is also available today. See the release notes for full details. We are currently focusing on .NET 8 quality which means only the most critical fixes will be released for .NET 7. Once .NET 8 ships GA, we will re-evaluate the requirements for which fixes are included in service releases.

What’s fixed and improved in .NET MAUI

Several top desktop issues have been addressed for fonts (#9104, #13239), navigation (#7698, #15488, #9938), tabs (#12386, #13239, #6929), and file picker (#11088). We also continue our journey to improve memory management and address leaks (#15062, #15303, #15831).

.NET 8 preview 6 introduces Native AOT (ahead-of-time compilation) for iOS. Using this opt-in preview feature, we are currently seeing 30-40% reduction in app sizes compared to Mono. If you’re excited about the possibility of achieving better performance and size savings when targeting iOS, check out the details in the .NET 8 preview 6 blog post.

Thank you to all 25 contributors (bots included) that helped make this release, especially 5 brand new contributors to .NET MAUI: Michael Cao, Will Davies, @MartyIX, Larry Ewing, Filip Navara, and Ryan Davis.

For a full list of fixes, check the release notes.

Introducing VS Code (Preview)

Today we have also released the .NET MAUI extension for Visual Studio Code, providing a consistent development experience across Windows, macOS, and Linux. For full details on the extension, check out Maddy Montaquila’s blog post introducing it here.

screenshot of Visual Studio Code debugging a .NET MAUI app in an Android emulator

How to update

Visual Studio 2022 on Windows now includes .NET 8 previews and the .NET MAUI preview workload. Download the latest preview version (17.7 Preview 3), select the .NET Multi-platform App UI workload, and then check the optional component “.NET MAUI (.NET 8 Preview)”.

Visual Studio installer checkbox for .NET MAUI and .NET 8 previews

If you are on macOS, you can now develop using Visual Studio for Mac after enabling the preview feature for .NET 8 in Preferences and installing .NET 8 preview 6 from the installer.

Enable .NET 8 in Visual Studio 2022 for Mac

Download the .NET 8 preview 6 installer, and then install .NET MAUI from the command line:

dotnet workload install maui

Feedback Welcome

We appreciate your feedback and contributions to .NET MAUI. You can report issues, suggest features, or submit pull requests on our GitHub repository. You can also join our Discord server or follow us on Twitter to stay in touch with the latest news and updates.

Thank you for your support and happy coding!

27 comments

Discussion is closed. Login to edit/delete existing comments.

  • Eder Cardoso 1

    Nice to see VS Code extension. and specially this note:
    ” Once .NET 8 ships GA, we will re-evaluate the requirements for which fixes are included in service releases.”

    👏

  • Prem Shah 1

    What about Jar Binding in Maui like xamarin.form

    • David OrtinauMicrosoft employee 1

      Mostly library bindings are the same as with Xamarin. The projects should upgrade to be SDK style.

      As of .NET 7, all *.java files within the project directory are automatically added to the AndroidJavaSource item group. Additionally, AndroidJavaSource now supports Bind item metadata. This will instruct the build system to not only compile the code but also produce a C# API for it.

      https://github.com/dotnet/docs-maui/issues/1515

      More explicit docs are coming on these topics.

      • Prem Shah 0

        Hello David,
        Thanks for your reply, i have not get any solution in this Ticket

  • AVATAR Jake 0

    Nice! How about MAUI MVU framework? Would it be supported officially in .NET 8 release?

    • David OrtinauMicrosoft employee 2

      I recommend checking out MauiReactor which is actively being developed. Uno also have MVUX that might be worth considering.

      We are not working on an MVU implementation for .NET 8.

  • Brian Runck 1

    How do you get a version of VS for Mac that has the Use .NET 8 if installed preview feature? The preview version of VS I’ve installed doesn’t show it. 🙁 🙁

    • David OrtinauMicrosoft employee 1

      It’s in version 17.6.1 which is on the stable update channel in VS Mac. Then enable that feature as shown in the screenshot.

      • MH Rastegari 1

        It’s available in stable but not in preview? :”(

  • Francis West 0

    Where can we see information pertaining to updates in MAUI Hybrid? I’ve never had more fun coding than I have with hybrid.
    Are you guys making it a first class citizen?

    • Beth MassiMicrosoft employee 1

      Glad you’re having fun, Francis!

      WRT Blazor hybrid with MAUI we’ve got work planned across the Blazor, MAUI, WinUI and Edge teams for a variety of improvements. Things like multi-targeting support via pre-processor directives in Razor (https://github.com/dotnet/razor/issues/8468), improvements for desktop scenarios, better tooling and docs. Support for Blazor hybrid apps shipped with the first preview of the .NET MAUI VS Code extension so we certainly see it as a first class citizen. It’s hard to see all the work across all the teams in one place but you can take a look at the “Blazor hybrid” motivator tag on this board for those items pertaining to desktop scenarios: https://github.com/orgs/dotnet/projects/237. Some items ship in the platform (.NET 8) some in WinAppSDK, some in Visual Studio releases.

      As for non-Blazor hybrid apps support (i.e. what we introduced at Build with the MAUI HybridWebView experiment), we’re still looking for feedback and interested to know what’s missing, what scenarios people are targeting, what type of tooling would be required, etc. Keep it coming: https://github.com/Eilon/MauiHybridWebView

  • McCollough, David M. 0

    I thought I would try the .NET 8 Preview 6 maui bits, unfortunately it doesn’t seem like I can get the Maui Workloads installed.

    I’m running on Mac, using Ventura 13.4.1
    I have Visual Studio for Mac v17.6.1, build 452

    I turned on using the .NET 8 SDK if it’s installed. I installed it using this link.

    Once I had it installed. From a terminal window I did a dotnet workload install maui

    However when I do a dotnet workload list, I only see 1 entry
    maui 8.0.0-preview.6.8686/8.0.100-preview.6 SDK 8.0.100-preview.6

    Shouldn’t I see workloads for maui-maccatalysti, maui-is, maui-android as well ?

    How do I get them back ?

    output from dotnet –list-sdks
    2.1.818 [/usr/local/share/dotnet/sdk]
    3.0.103 [/usr/local/share/dotnet/sdk]
    3.1.426 [/usr/local/share/dotnet/sdk]
    5.0.408 [/usr/local/share/dotnet/sdk]
    6.0.408 [/usr/local/share/dotnet/sdk]
    6.0.410 [/usr/local/share/dotnet/sdk]
    6.0.412 [/usr/local/share/dotnet/sdk]
    7.0.203 [/usr/local/share/dotnet/sdk]
    7.0.302 [/usr/local/share/dotnet/sdk]
    7.0.304 [/usr/local/share/dotnet/sdk]
    7.0.306 [/usr/local/share/dotnet/sdk]
    8.0.100-preview.6.23330.14 [/usr/local/share/dotnet/sdk]

    and if I try and run a new project from the command line with the following, it complains that there is no target
    dotnet build -t:Run -f net8-android

    • Jonathan PeppersMicrosoft employee 1

      Do you need to use ‘-f net8.0-android’ instead?

      ‘dotnet workload list’ does currently have an issue where it only lists the top-level workloads it installed in some cases. But that shouldn’t cause an issue: if you see the ‘maui’ workload, you have the others.

      If you still can’t get things working, you might follow this guide to get to a clean state:

      https://gist.github.com/jonathanpeppers/63beb491a9185ac06710261536cc35c9

      • McCollough, David M. 0

        Thanks Jonathan, that does indeed work.

  • Niall Ginsbourg 0

    Is the new .NET7 SR in the VS2022 update that was released yesterday – or did it miss the cut & we need to wait for the next one?
    Also – what is the 7.0.92 release called – is that SR7 (the github repo doesn’t have a SR number this time)?

    • David OrtinauMicrosoft employee 0

      The .NET 7 SR was included in the 17.7 preview release and will come later to 17.6. It’s SR 7.

  • Oguz Mazlum 0

    I’ve upgrade my .net maui Android application but it wont launch the application on the device anymore.

    [CompatibilityChangeReporter] Compat change id reported: 171979766; UID 10306; state: ENABLED
    [System.out] Sending WAIT chunk
    Failed to launch android application

  • fra brix 0

    Hi,
    I dont want to spoilt the party and I am very eager to try Maui Preview 6 to see if some of the nasty issues with .net 7 have gone…. however after installing it I cannot build either android or iOS, just create a blank app in either iOS or android using windows machine and visual studio latest preview.

    Android does not build – this guy blogged it here
    https://egvijayanand.in/2023/07/13/dotnet-maui-on-dotnet-8-preview-6-android-build-issue/

    iOS I get an error todo with resizetizer not finding the info list…

    Can someone from the team reply and provide a workaroud? Wondering if any tests prerelease actually take place.

    We are on your side and we have totally invested in migrating to Maui, but boy its tough!!!

    thanks

  • S. M. JAHANGIR 0

    Will there be anything like Flutter/Jetpack Compose/Kotlin Compose which enables writing UI codes using pure C# instead of XAML?

    • David OrtinauMicrosoft employee 1

      Sure, you can do that today. While Visual Studio is optimized for XAML development, you can do everything in C# if you wish, and leverage .NET hot reload for C#.

      To make the syntax nicer there are several libraries available like the .NET MAUI Community Toolkit.

      If you want to switch from MVVM to MVU, then check out MauiReactor or Uno Platform’s MVUX.

      • Pruitt, David 0

        Hot reload is broken and does not work. There are so many issues and so many discussion about this on Github, I’m surprised Microsoft is still telling people that you can “leverage .NET hot reload”.

        We really need a XAML designer/previewer ASAP.

Feedback usabilla icon