Uno Platform 5.6 版本发布总结
主要观点
Uno Platform 团队发布了 5.6 版本,带来了性能、生产力和跨平台开发能力的显著提升。此次更新的重点包括 Hot Reload 的增强、应用程序打包支持的扩展以及内存和运行时的优化。
关键信息和重要细节
Hot Reload 增强
- 跨平台支持:Hot Reload 现在在 iOS、Android 和 Catalyst 等移动平台上全面支持 XAML 和 C#,适用于所有集成开发环境 (IDE)。
- Visual Studio 更新:Windows 上的 Visual Studio 现已支持 iOS 和 Android 的 Hot Reload 调试功能。
- C# 编译器改进:新增的 C# 编译器功能支持 lambda 表达式的修改,减少了应用程序重启或代码回滚的需求。
- 稳定性提升:Hot Reload 的改进旨在提高稳定性,提供更一致的跨平台体验。
性能优化
- WebAssembly AOT 编译:在 WebAssembly AOT(提前编译)场景下,执行速度提升了高达 10 倍。
- 视觉状态创建和内存优化:视觉状态创建速度提升了 2.5 倍,关键场景下的性能提升了 2.5 倍。例如,Uno Gallery 中的 DataGrid 示例加载速度比之前的 5.5 版本快了近三倍。
应用程序打包支持扩展
- macOS 支持:新增了 .pkg 和 .dmg 格式的支持,以及 App Store 发布所需的代码签名和公证。
- Snap 包创建:引入了破坏性模式的 Snap 包创建,适用于持续集成 (CI) 环境。
- 打包步骤简化:更新旨在减少为不同环境创建可执行文件的步骤。
其他性能优化
- WebAssembly AOT 更新:修复了 AOT 编译器中某些方法配置导致的性能下降问题,消除了解释器的回退。
- 视觉状态创建和 JavaScript 交互重构:减少了应用动画帧变化所需的时间,提升了整体性能。
内存和资源优化
- Key not found 缓存策略:从 WinUI 借鉴的资源解析策略,减少了在嵌套字典中进行深度搜索的次数,提高了大型 UI 树的性能。
- ResourceDictionary 实例的延迟创建:节省了宝贵的内存空间。
- 资源文件自动裁剪:减少了 Uno 程序集的大小,最大程序集在空应用中缩小了 16%。
其他更新
- Skia+Desktop 的触摸输入支持:在 X11 上新增了触摸输入支持。
- .NET 9.0 默认选项:在 dotnet new 模板和解决方案向导中将 .NET 9.0 设为默认选项。
更多信息
感兴趣的读者可以在 GitHub 上查看完整的发布更新日志,了解所有新功能、修复和优化。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。