Exploring Uno Platform: Bringing UWP Applications to Mobile & Browsers
uno logo from https://platform.uno/

Exploring Uno Platform: Bringing UWP Applications to Mobile & Browsers

Introduction

Inspired by the video on channel 9, I tried to test bridging an old UWP windows application to mobile and browsers using Uno platform. The source code for the project is available here and it is partially functional. The docs for the Uno platform are relatively limited and a lot more on practical implementation can be learnt by exploring the source code of their examples on github here.

About Uno

No alt text provided for this image

Uno platform allows running a single code base on UWP, iOS, Android and Browsers. How is it different from Xamarin Forms? Some of the main differences include full support for UWP XAML standard, support for responsive design using visual state manager and adaptive triggers, support for cross platform templates and Web Assembly. As shows in the figure (adapted from from https://platform.uno/), as a runtime, Uno uses Xamarin Native stack for mobile, mono-Wasm for browsers (WebAssembly) and UWP/WinUI for building UWP applications. In recent release, it is said that the Xamarin Forms renders are made available, which means that Xamarin Forms can also be ran on the web browsers.

How was my experience working with this?

The biggest limitation I saw was in lack of sufficient docs. However, most of the common issues can be solved by reviewing the code of the examples provided. The bridging was not very straightforward. Additional event handlers are required to handle events such as back button in Android. Properties such as Page Bottom bar were not supported and were replaced by an App Bar at the bottom. Adaptive triggers were not supported for item templates in Android and I could not get Item panel template to work for web assembly. There is still a lot of adjustments required to be done for your base XAML, however, for bringing your large legacy applications to new devices, Uno could be very helpful.

Disclaimer

The base UWP app used here can be installed on Windows 10 from the Microsoft Store here. The application in the windows store and source code in the github repository are only meant for demonstrating the functionality of Uno platform. The author does not take any responsibility of the accuracy of the data such as list of the counties, flags, the statistics presented or the description of the country. The data for this is derived programmatically (which might have introduced additional errors) from the The CIA factbook 2018 archive. The continent data is derived from the following source

要查看或添加评论,请登录

Vijaya Sekhar G.的更多文章

社区洞察

其他会员也浏览了