Uno Platform 4.9 Highlights Cross-Platform Media Player, WebView2

A cross-platform media player highlights the new Uno Platform 4.9, the latest edition of the cross-platform application framework that lets developers write an application once in XAML and C# and deploy it to any target platform.

The open source Uno Platform is a dev tooling partner of Microsoft, claiming the only offering that enables development of single-codebase applications for Windows, WebAssembly, iOS, macOS, Android and Linux, targeting all OSes and browsers. It has also teamed up with Redmond on various projects and has sometimes implemented new tech before Microsoft itself.

Uno Platform
[Click on image for larger view.] Uno Platform (source: Uno Platform).

The new release sports two major features, one of which is a broader reach for the MediaPlayerElement control, which can now be used for all supported platforms, having previously been available only for iOS, Android and Mac Catalyst apps. With Uno Platform 4.9, the company pointed it to web and Linux targets, with the latter using libVLC under the hood to render media.

"As of today, you can easily create single-codebase solutions for cross-platform applications and reuse the rich and robust Media Player Element from Windows UI," the company said in a June 5 announcement. "It's another example of how the existing component ecosystem can be brought forward and significantly improve your developer velocity."

[Click on image for larger view.] Media Player Element (source: Uno Platform).

More about the MediaPlayerElement can be found in the control's documentation.

The second major feature of v4.9 as identified by Uno Platform is WebView2 for cross-platform applications, with the team adding support for Android, iOS and Mac Catalyst.

"This control allows you to navigate to external web content as well as to load and display arbitrary HTML content -- for example, if you want to embed your company website's contact form or display the latest news articles," Uno Platform said. "WebView2 even supports C# to JavaScript communication via the ExecuteScriptAsync method and JavaScript to C# messaging via the WebMessageReceived event, which opens doors to powerful embedding scenarios like interacting with a rich JavaScript charting or data grid component."

The company also announced native host support for Skia, an open source 2D graphics library that provides common APIs that work across a variety of hardware and software platforms. Uno Platform said leveraging native controls on Skia targets may be useful in some scenarios, providing deeper integration with the platform.

Other items of note in the new release include:

  • Indexer and MVVM toolkit support for x:Bind expressions
  • UIElement.ActualOffset support
  • ms-appdata support for SvgImageSource, to load app packaged SVGs
  • Many performance improvements for WebAssembly using JSImport/JSExport
  • Many performance and memory improvements in the XAML Generator
  • Performance improvements in TextBlock rendering for Skia heads
  • DEPRECATING Uno Platform Solution Templates for Visual Studio 2019

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus


  • 'Dev Home' Update Leads Developer Goodies in AI-Powered Windows 11 Update

    Along with today's new AI-powered Windows 11 update come new goodies for developers, including a new edition of Dev Home, a preview offering described as a "control center" providing coding-focused features and functionality.

  • Community Dev Gives VS Code Python Some YAPF

    The latest update to Python in Visual Studio Code includes a new extension for Python formatting that was contributed by a member of the open source community.

  • Devs Demand Visual Studio 2022 Ditch Old .NET Framework Dependencies

    Developers commenting on a Microsoft post about performance improvements in the upcoming .NET 8 demanded the company end Visual Studio 2022's dependency on the old .NET Framework.

  • Microsoft Remakes Azure Quantum Dev Kit with Rust, 'and It Runs in the Browser!'

    "The' tl;dr' is that we rewrote it (mostly) in Rust which compiles to WebAssembly for VS Code or the web, and to native binaries for Python."

Subscribe on YouTube