今天,微软正式宣布 Windows App SDK 1.6 正式发布,Windows App SDK 1.6 的提升不仅仅是性能上,还改善了 WebView 2、包部署 API 以及 WinUi 3 控件更新等方面。
有关 Windows App SDK 1.6 的新特性/新体验如下:
原生 AOT 支持
Windows App SDK 1.6 版本中,最引人注目的更新莫过于对 Native Ahead-Of-Time (AOT) 编译的支持。这项技术允许开发者将应用预先编译为原生代码,从而实现更快的启动时间和更小的内存占用。
实际测试中,微软的Contoso Camera示例应用有着巨大的性能提升:
- 启动时间减少50%
- 使用框架包时,包大小减少约8倍
- 在自包含模式下,包大小减少约2倍
WebView2 版本解耦
Windows App SDK 1.6 在 WebView2 集成方面做出了重大改变。现在,Edge WebView2 SDK 作为 NuGet 引用被引入,而不是硬编码嵌入Windows App SDK中。这一变化允许开发者自行选 Microsoft.Web.WebView2 包版本,简化了与其他依赖 WebView2 的 NuGet包 的兼容性。
包管理部署 API 增强
Windows App SDK 1.6在包管理 API 方面有着如下改进:
- 新增包移除和配置功能
- 支持检测待定注册和本地可用更新
- 简化了功能可用性检测,有利于实现”渐进式体验”
- 其他多项质量提升和便利性更新
WinUI 3 控件更新改进
Windows App SDK 1.6 新增了“CanTearOutTabs”模式:
- 提供类似Microsoft Edge和Google Chrome的标签拖拽体验
- 拖拽时立即创建新窗口,提供即时视觉反馈
- 支持一步到位的窗口最大化或贴边操作
- 克服了拖放API的限制,支持以管理员身份运行
其他控件更新包括:
- PipsPager 新增首尾项包装模式
- RatingControl 提供更多自定义选项
- ItemsWrapGrid 解封,提高兼容性
额外功能更新 1.6版本还引入了一些其他新API和功能:
- 新增ColorHelper.ToDisplayName() API
- 在MRTCore中添加Microsoft.Windows.Globalization.ApplicationLanguages类
- 引入PrimaryLanguageOverride功能,用于精细调整应用显示语言
如果你是 Windows 应用开发者,请尽早更新至 Windows App SDK 1.6。更多有关 Windows App SDK 的官方文档,可以前往这里查看。