.NET MAUI 10 预览版 6 更新分析

Source: InfoQ - Architecture

7月15日,微软发布了.NET MAUI在.NET 10中的第六个预览版本",引入了一些新特性和改进,旨在提高开发人员的生产力和框架性能。这个预览版本专注于完善三个现有的控件(MediaPicker、WebView和HybridWebView),以及针对特定平台代码的更新和稳定性修复。

MAUI是多平台应用UI(Multiplatform Application UI)的缩写。根据微软的说法,它是Xamarin和Xamarin Forms框架的演进,将单独的目标库和项目统一为一个用于多个设备的单一项目。目前,MAUI"支持编写在Android 5+、iOS 12.2+、macOS 12+(作为Mac Catalyst")、Samsung Tizen(尽管此版本中有移除Tizen"模板的变更)、Windows 10版本1809+或Windows 11上运行的应用程序。与去年发布的"版本9相比,支持的最低平台没有变化,尽管预览版本6增加了对Android API级别35和36的支持。

该版本中一个突出的特性是MediaPicker"控件的增强。开发人员现在可以使用 MaximumWidth 和 MaximumHeight 参数直接通过API选择多个文件并压缩图像。这个功能简化了应用程序内媒体文件的处理,使得管理用户生成的内容更加容易,而无需额外的处理。

var result = await MediaPicker.PickMultipleAsync(new MediaPickerOptions { MaximumWidth = 1024, MaximumHeight = 768 });

另一个重要的增加是能够拦截和响应从BlazorWebView"和HybridWebView"控件发出的网络请求。这个功能允许开发人员修改头部、重定向请求或提供本地响应,从而更好地控制web内容和应用程序中的交互。

webView.WebResourceRequested += (s, e) => { if (e.Uri.ToString().Contains("api/secure")) { e.Handled = true; e.SetResponse(200, "OK", "application/json", GetCustomStream()); } };

至于性能和稳定性的改进,这个预览版本还包括对控件和布局行为的众多修复和改进。 CollectionView 、 CarouselView 和 SearchBar 现在提供了更可靠的跨平台性能,增强了选择更新、占位符颜色更新和内存管理。在iOS上的 CarouselViewHandler2 的内存泄漏已被修复,提高了整个应用程序的稳定性。Switch"控件现在在未设置OnColor属性时使用原生默认的“on”颜色(这个属性设置了开关切换到开时的颜色),确保了更一致的用户界面。

这个预览版是.NET MAUI在.NET 10最终发布的重要里程碑之一。下一个预览版本.NET MAUI 10预览版7计划于8月1日发布"。鼓励开发人员探索这些新功能并提供反馈,以帮助塑造.NET MAUI的未来。读者可以参考GitHub官方MAUI存储库以获取完整的发布说明"。

原文链接:

https://www.infoq.com/news/2025/07/net-maui-10-preview-6/"