微软.NET 跨平台 UI 框架 MAUI预览版8发布

砍柴网  •  扫码分享

11 月 30 日消息,据微软中国 MSDN 发布,.NET 多平台应用程序 UI (.NET MAUI) 可以使用单个代码库为 Windows、macOS、iOSAndroid 构建本机客户端应用程序,并为 Blazor 混合方案提供本机容器和控件。.NET MAUI 是 Visual Studio 中的一个框架,它抽象了已经可用的本机 UI 框架 ——WinUI for Windows、Mac Catalyst for macOS/iPadOS、iOS 和 Android。尽管它不是另一个本机 UI 框架,但仍有大量工作需要在这些设备上提供最佳开发和运行时体验。

.NET 团队一直在与社区一起努力的开发,微软致力于它的发布。遗憾的是,.NET MAUI 将无法在 11 月与 .NET 6 GA 一起发布。微软希望在第一天就为用户提供最佳体验、性能和质量,为此,微软需要推迟时间表。IT之家获悉,微软现在的目标是在 2022 年第二季度初推出 .NET MAUI 。

与此同时,微软将继续增强 Xamarin 并推荐它用于构建生产移动应用程序,并继续发布 .NET MAUI 的月度预览。微软计划为 .NET MAUI 提供的所有功能将在 11 月 .NET 6 发布时提供,但微软将继续努力提高质量并解决客户反馈。微软鼓励你尝试预览。.NET 升级助手还将支持将 Xamarin 项目升级到 .NET MAUI。

.NET 6 RC1 是最终版本之前的版本,这意味着你可以在生产中使用它并获得支持。这不包括 .NET MAUI 包。.NET MAUI 包的下一个版本,当 .NET 6 RC2 发布时,将在版本中显示“预览”。

.NET 多平台应用程序 UI (.NET MAUI)

https://github.com/dotnet/maui

.NET MAUI 预览版 8 亮点

.NET MAUI 的 9 月预览版完成了一些重要的 Visual Studio 集成,即在 Visual Studio 2022 安装程序中将 .NET MAUI 作为工作负载安装,并将 Windows 平台折叠到微软的单一、多目标项目中。借助 Visual Studio 2022 预览版 4,你现在可以通过 C# 和 XAML 使用更广泛的热重载支持,以及新的 XAML 实时预览面板,以打造高效、专注的开发环境。在 .NET MAUI SDK 本身中,预览 8 包括对应用程序启动模式的更新、扩展处理程序的能力,以及在微软接近功能完整性时的其他各种新控件功能。

Visual Studio 2022 生产力

安装 Visual Studio 2022 时,你现在可以在使用 .NET 工作负载的移动开发中检查 .NET MAUI(预览版)。这将引入 .NET 6 以及可选的工作负载依赖项:Android、iOS 和 Mac Catalyst。以桌面为目标时,你还需要选择使用 .NET、UWP 的桌面开发和使用 C++ 工作负载的桌面开发。

微软.NET 跨平台 UI 框架 MAUI预览版8发布

安装后,.NET MAUI 模板和 Visual Studio 的功能都可用。实时预览将在 Visual Studio 窗口中的面板中镜像你正在运行的应用程序,你可以停靠在最方便的任何位置。该面板支持放大和缩小以关注 UI 的每个细节,在水平和垂直轴上对齐元素的指南,并且在某些平台上,你可以悬停并选择 UI 元素以获取大小和距离信息。

微软.NET 跨平台 UI 框架 MAUI预览版8发布

XAML 热重载现在适用于 Android、iOS(在 Windows 上通过热重启或远程构建主机)和 Windows。.NET Hot Restart 也在 Android、iOS 和 Windows 上与 XAML Hot Reload 协同工作。

创建新项目时,你现在会在 Platforms 文件夹中看到 Windows 平台与 Android、iOS 和 Mac Catalyst 并列。要使用 Windows,首先需要安装适用于 Visual Studio 2022 的 Windows App SDK 扩展,然后取消注释 csproj 文件顶部的 TargetFramework 节点。在未来的版本中,默认情况下,这将通过 .NET MAUI 预安装的扩展程序提供。

.NET MAUI SDK 更新

你迁移现有应用程序最显著的更新是微软如何实现 .NET Host Builder 模式。微软现在与 ASP.NET 和 Blazor 如何使用创建并返回 MauiApp 的 MauiProgram 类保持一致。现在每个平台都调用 MauiProgram.CreateMauiApp。将现有项目与新模板或 pull request 进行比较,以查看对 Android/MainApplication.cs、iOS/AppDelegate.cs 和 macCatalyst/AppDelegate.cs 的这些更改。

示例 MauiProgram:

public static class MauiProgram{public static MauiApp CreateMauiApp(){var builder = MauiApp.CreateBuilder();builder.UseMauiApp().ConfigureFonts(fonts =>{fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");});return builder.Build();}}

安卓示例 MainApplication:

public class MainApplication : MauiApplication{public MainApplication(IntPtr handle, JniHandleOwnership ownership): base(handle, ownership){}protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();}

pull request:

https://github.com/dotnet/maui/pull/2137

安卓更新

Android 12 (API 31) 现在是为 Android 构建的 .NET 6 应用程序的默认版本。要使用 Android 12,你需要手动安装 JDK 11。一旦微软更新 Visual Studio 中的 Android 工具以使用 JDK 11,微软将默认将此依赖项与 .NET MAUI 捆绑在一起。在此之前,JDK 11 可能会对 Android 设计器、SDK 管理器和设备管理器产生不利影响。

Android 项目现在默认使用 MaterialTheme。确保 Platforms/Android/MainActivity.cs 指定 @style/Maui.SplashTheme 否则你可能会在 Android 上遇到运行时错误。例如,查看更新的 .NET MAUI 模板。

手动安装 JDK 11:

https://github.com/xamarin/xamarin-android/wiki/JDK-11-Warning

更新的 .NET MAUI 模板:

https://github.com/dotnet/maui/blob/main/src/Templates/src/templates/maui-mobile/Platforms/Android/MainActivity.cs

其他变化

其他值得注意的变化包括:

MinHeightRequest、MaxHeightRequest、MinWidthRequest、MaxWidthRequest 已删除“Request”后缀,布局系统现在将它们视为真实值

将行为附加到任何控件映射器的简化方法 – #1859

Shell 主题样式的各种改进

为 Android #2027 和 iOS #2029 添加了 RefreshView

添加绝对布局 #2136

添加了从右到左 (RTL) FlowDirection #948

添加 Button.Icon ImageSource #2079

#1859:

https://github.com/dotnet/maui/pull/1859

#2027:

https://github.com/dotnet/maui/pull/2027

#2029:

https://github.com/dotnet/maui/pull/2029

#2136:

https://github.com/dotnet/maui/pull/2136

#948:

https://github.com/dotnet/maui/pull/948

#2079:

https://github.com/dotnet/maui/pull/2079

准备好了吗?打开 Visual Studio 2022 并创建一个新项目。搜索并选择 .NET MAUI。

微软.NET 跨平台 UI 框架 MAUI预览版8发布

有关 .NET MAUI 入门的更多信息,请参阅微软的文档。

文档:

https://docs.microsoft.com/zh-cn/dotnet/maui/get-started/installation

欢迎反馈

Visual Studio 2022 正在快速启用 .NET MAUI 的新功能。当你在调试、部署和编辑器相关体验方面遇到任何问题时,请使用“帮助”>“发送反馈”菜单报告你的体验。

请通过 dotnet/maui 在 GitHub 上与微软互动,让微软了解你使用 .NET MAUI 创建新应用程序的体验。

要查看未来版本中的内容,请访问微软的产品路线图,要了解功能完整性的状态,请访问微软的状态 wiki。

dotnet/maui:

https://github.com/dotnet/maui

产品路线图:

https://github.com/dotnet/maui/wiki/roadmap

状态 wiki:

https://github.com/dotnet/maui/wiki/status

【来源: IT之家 

随意打赏

提交建议
微信扫一扫,分享给好友吧。