Uno Platform 4.9 版本发布总结
本周,Uno Platform 发布了 4.9 版本,该框架用于构建原生移动、桌面和 WebAssembly 应用程序。此版本引入了两个社区期待已久的功能:MediaPlayerElement 控件和WebView2 支持。此外,该版本还包括超过 100 项其他改进和增强功能,例如对 Skia 的原生宿主支持。
MediaPlayerElement 控件
- 功能概述:MediaPlayerElement 控件从 Windows UI 扩展到 iOS、Android 和 Mac Catalyst 平台,并通过 Uno Platform 提供一致的媒体播放体验。
- 跨平台支持:该控件支持 Web 和 Linux 目标,Linux 目标使用 libVLC 进行媒体渲染。
- 文档:详细使用说明可在官方文档中找到。
WebView2 支持
- 功能概述:WebView2 控件支持 Android、iOS 和 Mac Catalyst 平台,允许用户导航到外部网页并显示自定义 HTML 内容。
- C# 与 JavaScript 通信:该控件支持 C# 和 JavaScript 之间的通信,实现强大的嵌入场景,例如与 JavaScript 图表或数据网格组件交互。
- 替代 WebView "1":WebView2 取代了 WinUI 中的 WebView "1",提供了更丰富的功能集,并确保现有场景的无缝迁移。
Skia 原生宿主支持
- 功能概述:新增的 Skia 原生宿主支持允许集成原生控件,增强平台集成能力。
- 应用场景:该功能使 ContentControl 组件能够接受原生实例(如 GTK Widgets 或 WPF FrameworkElements),并在 Uno Platform 的表面上渲染它们。
- 文档:开发者可通过官方文档深入了解此功能。
代码示例
以下代码示例展示了如何在 Uno Platform Skia 画布上显示一个新的 Gtk CheckButton 控件:
<ContentControl x:Name="MyControl">
<ContentControl.Content>
<CheckButton xmlns="using:Gtk" />
</ContentControl.Content>
</ContentControl>其他改进和优化
- x:Bind 表达式支持:增加了对索引器和 MVVM 工具包的支持。
- UIElement.ActualOffset 支持:新增了对 UIElement.ActualOffset 的支持。
- ms-appdata 支持:支持通过 SvgImageSource 加载应用打包的 SVG。
- 性能优化:WebAssembly 使用 JSImport/JSExport 实现了显著的性能改进,XAML 生成器也进行了性能和内存优化。
- TextBlock 渲染优化:Skia 头部的 TextBlock 渲染性能得到了提升。
- Visual Studio 2019 模板弃用:Uno Platform Solution Templates for Visual Studio 2019 已弃用。
资源与文档
- 官方文档:开发者可访问官方文档获取详细的使用指南和教程。
- GitHub 仓库:可通过官方 GitHub 仓库查看更多详细信息。
- 发布日志:完整的改进列表可在发布日志中找到。
此次更新为开发者提供了更强大、更高效的开发体验,进一步扩展了 Uno Platform 的功能和应用场景。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。