.NET MAUI 9 预览版 7:引入 HybridWebView 及其他改进

.NET 9 Preview 7 更新总结

主要更新内容

.NET 9 Preview 7 版本在 .NET MAUI 方面引入了多项重要更新,包括 HybridWebView 的引入、MainPage 属性的弃用,以及 iOS 上远程通知管理的新生命周期方法等。此外,还对原生嵌入功能进行了增强。

HybridWebView 的引入

HybridWebView 允许开发者在 WebView 中托管 HTML、JavaScript 和 CSS 内容,并支持托管内容与宿主应用程序代码之间的通信。这使得开发者可以在 .NET MAUI 原生应用中集成 React JS 应用,同时后端使用 C# 和 .NET 开发。

新的 TitleBar 控件

引入了新的 TitleBar 控件和 Window.TitleBar 属性,开发者可以设计自定义标题栏,并将其放置在应用程序中的任何位置。该控件目前仅适用于 Windows 项目,未来将支持 Mac Catalyst。

ActivateWindow 方法

新增了 ActivateWindow 方法,用于在 Mac Catalyst 和 Windows 平台上将特定窗口带到前台。

BackButtonBehavior 更新

BackButtonBehavior 的 IsVisible 和 IsEnabled 属性现在支持 BindingMode.OneWay,替代了之前的 BindingMode.OneTime,从而允许在运行时通过数据绑定动态控制返回按钮的行为。

BlazorWebView 向后兼容性更改

BlazorWebView 的默认主机地址在 iOS 和 Mac Catalyst 18 及更新版本中已更新为 localhost。若要继续使用 0.0.0.0,开发者需要在 MauiProgram.cs 中启用该行为。

MainPage 属性的弃用

MainPage 属性被标记为过时,开发者应直接在 Window 上设置 Page。该属性将在未来的版本中完全移除,但在 .NET 9 中仍可用以协助从 Xamarin.Forms 过渡。

原生嵌入功能的改进

增强了原生嵌入功能,允许将 .NET MAUI 控件集成到 Android、iOS、Mac Catalyst 或 WinUI 的 .NET 应用程序中,无需兼容包。

其他更新

  • 新增了 Handler 断开策略。
  • WebView 控件新增了 ProcessTerminated 事件。
  • 新增了处理 iOS 和 Mac Catalyst 上远程通知的生命周期方法。
  • 引入了 Xcode Sync (xcsync) 用于 CLI 和 Visual Studio Code。

质量改进

该版本还包括对 .NET for iOS 和 .NET for Android 的质量改进。完整的 .NET MAUI 更新说明可在 GitHub 上查看。

阅读 105
0 条评论