ARTICLE · 软件编程
Uno Platform 6.6 新增 Native AOT、Vulkan 渲染和更广泛的无障碍支持
一语总结Uno Platform 6.6 新增了 Native AOT 发布、可选 Vulkan 后端、MCP 服务器自动注册、XAML 简化以及更广泛的基于 Skia 的无障碍支持。
Uno Platform 6.6 专注于运行时性能和更贴近 WinUI 的功能一致性。它增加了面向 Android、iOS、Linux、macOS 和 Windows 的 Native AOT 发布功能,在 .NET 10 上的 Chefs 示例中,启动性能提升从 iOS 的 21% 到 Android 的 61% 不等;同时继续支持 JIT 发布。现在 Windows、Linux 和 Android 上提供了可选的 Vulkan 后端,在某些测试中每帧渲染成本最高可降低 50%,而 OpenGL 仍是默认选择。通过隐式命名空间、GlobalNamespaces.xaml 以及不再需要空代码隐藏文件的纯 XAML 页面,XAML 编写得以简化。Uno 的 App MCP 和 Docs MCP 服务器可以自动注册到 VS Code Copilot、Claude Code、Cursor、Codex CLI 和 Gemini CLI 等编码智能体。无障碍功能现在可在 Windows、macOS 和 WebAssembly 上与屏幕阅读器配合使用,完整的 IME 组合和自动字体回退改进多语言支持。该版本还扩展了 WinUI API,包括投影、变换、文本高亮、拼写检查、浮出控件、剪贴板、拖放和 WebView2。
- Native AOT 是覆盖五个目标平台的核心运行时变更。
提前编译消除了 JIT 启动开销,在 Uno 的示例中启动性能提升了 21% 至 61%,但实际效果取决于应用结构和部署配置。
- 可选的 Vulkan 后端可以降低图形密集型应用的渲染成本。
在 Windows、Linux 和 Android 上,某些测试中 Vulkan 将每帧成本降低了高达 50%,而 OpenGL 仍是默认的 Skia 后端。
- XAML 编写所需的样板代码大幅减少。
隐式命名空间、共享的 GlobalNamespaces.xaml 和自动代码隐藏生成机制,让开发者无需创建空的 .xaml.cs 文件即可生成纯 XAML 页面。
- Uno 的 MCP 服务器现在可以自动注册到主流编码智能体。
App MCP 和 Docs MCP 将正在运行的应用和当前文档暴露给智能体,不过并非所有智能体都支持自动注册。
- 基于 Skia 的无障碍功能和多语言支持得到扩展。
屏幕阅读器现在可在 Windows、macOS 和 WebAssembly 上工作;完整的 IME 组合和字体回退改善了对亚洲语言及混合文字文本的处理。
Uno Platform 6.6 新增 Native AOT、Vulkan 渲染和更广泛的无障碍支持
Uno Platform 6.6 专注于运行时性能和更贴近 WinUI 的功能一致性。它增加了面向 Android、iOS、Linux、macOS 和 Windows 的 Native AOT 发布功能,在 .NET 10 上的 Chefs 示例中,启动性能提升从 iOS 的 21% 到 Android 的 61% 不等;同时继续支持 JIT 发布。现在 Windows、Linux 和 Android 上提供了可选的 Vulkan 后端,在某些测试中每帧渲染成本最高可降低 50%,而 OpenGL 仍是默认选择。通过隐式命名空间、GlobalNamespaces.xaml 以及不再需要空代码隐藏文件的纯 XAML 页面,XAML 编写得以简化。Uno 的 App MCP 和 Docs MCP 服务器可以自动注册到 VS Code Copilot、Claude Code、Cursor、Codex CLI 和 Gemini CLI 等编码智能体。无障碍功能现在可在 Windows、macOS 和 WebAssembly 上与屏幕阅读器配合使用,完整的 IME 组合和自动字体回退改进多语言支持。该版本还扩展了 WinUI API,包括投影、变换、文本高亮、拼写检查、浮出控件、剪贴板、拖放和 WebView2。
文章金句
"Native AOT 提前编译应用程序代码,而不是在启动时依赖 JIT 编译。
"Uno 报告称,在使用 .NET 10 上的 Chefs 示例应用进行的测试中,启动性能提升幅度从 iOS 的 21% 到 Android 的 61% 不等,不过结果取决于应用结构、硬件和部署配置。
"在这些平台上,OpenGL 仍然是默认的 Skia 后端,而 Apple 目标平台继续使用 Metal,WebAssembly 使用 WebGL。