微软在.NET 11 Preview 6中对.NET MAUI进行了多项架构和可靠性改进,包括将CollectionView实现带到了Windows平台,推动AndroidShell迁移到handler模型,提升Native AOT兼容性,并为中断的媒体选择器操作增加了恢复支持。此外,还移除了面向Xamarin.Forms应用迁移所设计的剩余兼容包之一。最大的UI变化是CollectionView2登陆Windows平台,新的Windowshandler使用WinUI的ItemsRepeater与Android、iOS和MacCatalyst上已经提供的CV2实现保持一致。
--91likeyou---
最大的 UI 变化是 CollectionView2(也称为 CV2)登陆 Windows 平台。新的 Windows handler 使用 WinUI 的 ItemsRepeater,使其与 Android、iOS 和 Mac Catalyst 上已经提供的 CV2 实现保持一致。它将 MAUI 的线性布局和网格布局映射到支持虚拟化的 WinUI 布局中,并支持包括分组、选择、页眉和页脚、空视图、吸附、增量加载以及与 RefreshView 集成等功能。
Preview 6 还使用标准 MAUI handler 重新实现了 Android 平台上的 Shell。新的 ShellHandler、ShellItemHandler 和 ShellSectionHandler 替代了基于 renderer 的类,并复用了 FlyoutViewHandler 和 TabbedPage 中共享的组件。微软表示,目前这只是 Android 平台的变化;iOS 和 Mac Catalyst 仍继续使用现有的 Shell renderer。因此,拥有自定义 Shell 行为或依赖 renderer 层的应用程序应该谨慎测试该预览版本。
对于混合应用而言,HybridWebView 的 JavaScript 互操作现在使用源码生成器替代反射。这消除了裁剪和 AOT 警告,并允许该控件运行在完全裁剪和 Native AOT 应用程序中。在 Android 上,MAUI 还会根据来源过滤传入的 JavaScript 消息,防止无关的 window.postMessage 事件(例如从嵌套框架发送的消息)被报告为原生消息。
该版本为 GeolocationListeningRequest 增加了 MinimumDistance 属性,允许应用程序仅在设备移动达到指定距离后请求位置通知。Android 应用程序还获得了可选择启用的 MediaPicker 结果恢复功能。新的 API 可以在 Android 终止并重新创建应用程序进程、而系统摄像头或选择器仍保持打开状态时,获取、等待或清除媒体结果。
一个可能造成破坏性影响的变化是移除了 Microsoft.Maui.Controls.Compatibility NuGet 包。显式引用该包,或依赖其 Xamarin.Forms 兼容 renderer 的项目,在面向 .NET 11 之前必须完成迁移。普通应用程序如果只引用 Microsoft.Maui.Controls,则不会受到影响,因为一些带有兼容性命名的基础类型仍然保留在核心程序集之中。
Preview 6 还包含针对 CollectionView、Shell、Android Material 3 样式、iOS 26、XAML 生成、无障碍功能以及部分平台基础功能的修复。Apple 工作负载现在面向稳定版 Xcode 26.6,而 .NET for Android 对 HTTP 失败和取消行为进行了调整,使其更符合更广泛的 HttpClient 契约。开发者可以在微软的 Preview 6 公告中找到安装说明,也可以在官方 GitHub 发布说明中查看详细的 MAUI 变化、关联 issue 和平台说明。.NET 11 Preview 6 现已作为预览版运行时和工具包提供下载。
:
🔥 热词:#NET MAUI