写点什么

Windows Community Toolkit 8.2 支持原生 AOT 编译

作者:Edin Kapić

  • 2025-05-18
    北京
  • 本文字数:992 字

    阅读完需:约 3 分钟

大小:506.40K时长:02:52
Windows Community Toolkit 8.2支持原生AOT编译

2025 年 4 月,微软发布了 Windows 社区工具包(Windows Community Toolkit,简称 WCT)的 8.2 版本。新版本更新了依赖项,提供了 UWP for .NET 9 和原生 AOT(提前编译)支持。

 

Windows社区工具包(WCT)是一个控件和库的集合,通过提供底层平台尚未提供的额外功能来为 Windows 开发者提供帮助。历史上,该工具包提供的功能逐渐被纳入了 Windows 开发平台本身。

 

不要把 Windows 社区工具包与.NET 社区工具包(.NET Community Toolkit,简称 NCT)搞混了,后者包含 WCT 中不依赖于任何底层 UI 平台的通用功能。

 

8.2 版本没有提供什么重大的新功能。最重要的变化是更新依赖项和目标框架别名(TFM),以及提供原生 AOT 编译支持。

 

该工具包的依赖项现已升级至最新版本:Windows App SDK 1.6(之前是 1.5)和 Uno Platform 5.5(之前是 5.2)。最低 Windows 目标框架别名已降至 19041(在 WCT 8.1 版本中是 22621)。对于部分用户来说,较高的 TFM 需求会导致 NuGet 包出现错误,因此,团队花了一些时间来修复成正确的依赖项,并降低了整个工具包的依赖性。

 

该版本更新了XAML behaviours的一个小命名空间,它现在使用 Microsoft.Xaml.Interactivity 而不是 Microsoft.Xaml.Interactions.Core。通过引用行为库的v3版本,新旧版本的 Windows 平台都得到了恰当的抽象。

 

现在,所有平台都支持原生AOT编译。当提前编译时,应用程序的性能更好,因为它们已经包含了特定于平台的可执行文件,而不是.NET 中间语言程序集。原生 AOT 支持仍然存在一些问题,目前正在解决中。

 

对于仍在使用 UWP 框架开发 Windows 应用程序的开发者,新工具包通过 Visual Studio 更新引入了.NET 9支持。它没有对 UWP 框架做任何改进,只是允许 UWP 应用程序以.NET 9 为目标平台。

 

8.2 版本中的次要修复包括改进 DispatchedQueueTimer.Debounce 扩展(用于限制事件的速率),以及支持AcrylicBrush对象(一种用于 UI 的半透明涂层)。

 

微软建议开发者了解下Windows社区工具包实验室(Windows Community Toolkit Labs)并为其做出贡献。这是一个用于预发布和实验性功能的存储库,它们还不够稳定,无法进入 WCT 主存储库。例如,其中有一个自动DependencyProperty代码生成器,由特性(attribute)控制,并使用了 C# 13 规范中的部分属性(property)。

 

8.2.250402 版本于 2025 年 4 月 2 日发布,距离 8.1 版本发布已经过去了八个月。工具包的源代码已在GitHub上提供。

 

原文链接:

https://www.infoq.com/news/2025/05/wct-8-2-native-aot/

2025-05-18 11:004543

评论

发布
暂无评论
Windows Community Toolkit 8.2支持原生AOT编译_微软_InfoQ精选文章