|Silverlight Bridge To UWP Apps|
|Tuesday, 22 September 2015|
Part of Microsoft's strategy to make Universal Windows Platform apps appealing to us - universally appealing I suppose - is creating "bridges" from old technologies to the new. Who would have guessed that a Silverlight bridge would become available? It has, but only in beta and not from Microsoft.
For reasons that we can only guess, Microsoft hasn't bothered with creating a bridge from Windows Phone 8 Silverlight apps to UWP (Universal Windows Platform), but Mobilize.NET has and Microsoft is promoting it.
According to Mobilize.NET, about half of all Windows Phone apps were written using Silverlight and, while they are supposed to be supported on Windows 10 mobile, the writing is on the wall and they are clearly not the way of the future. Until now Microsoft has issued guidelines and written articles on how to convert a Silverlight app to WinRT. The problem is, however, that there are lots of facilities that Silverlight apps can make use of that aren't yet supported in WinRT. This only goes to emphasize how mature Silverlight was, how much a work in progress WinRT is, and how nuts it was to abandon it and start over, see Dumping .NET - Microsoft's Madness and Silverlight is dead, long live Silverlight?.
Until Mobilize.NET came along your only choices were to run your Silverlight app under Window 10 Mobile and hope that it keeps working and being supported, or to do a manual conversion. With Mobilize.NET Silverlight bridge you can automate a large part of the conversion process. It is an extension to Visual Studio and it will take an existing project and output a new UWP project with converted C# and XAML files.
Automatic conversion is nearly always imperfect and the current preview claims to map the 700 most used APIs and to convert manifests, NuGet package references and cope with async/await changes. More API mappings are planned for future versions - 1200 should be complete by November. All of the mappings have been open sourced and are available in a GitHub repository which means you can help by extending them.
Notice that while the mappings are open source the actual bridge isn't. It is currently free to download in return for an email address and some additional information.
Of course, the attraction of a UWP app is that it should run on desktops, tablets, Xbox, phone and, in a limited way, even the Raspberry Pi.
This raises the question of what support there might be for Silverlight desktop apps, but as these are close to Phone apps some of the mappings might work.
The big problem is that at the moment there still doesn't seem to be enough incentive to make a conversion. Existing Silverlight Phone apps should run on Windows mobile 10 and unless the market gets bigger there isn't a compelling reason to update them. In addition WinRT and UWP are still in a rudimentary state of development and, with there being little chance of a Windows 10 Phone taking a big market share in the very near future, there isn't much to target.
The exception of course is the slow rise of the Windows 10 tablet and the Slate. It might be worth the effort to have an app that runs on Windows tablets even if it isn't backwards compatible with earlier versions of Windows.
The situation with Windows 10 development is looking better but it still isn't a "must do".
New Visual Studio extension helps you move Silverlight Phone to new Universal Windows Platform
Initial preview of Silverlight bridge to UWP
A New Build Of Windows 10 Mobile
Microsoft's Islandwood Now On GitHub - An iOS Bridge To Nowhere?
Windows 10 SDK And Tools - Almost There!
Project Westminster - Another Web App Format
Why Should We Write Universal Apps When Microsoft Drops Them - Skype To Go Desktop Only
Android And iOS Apps For Windows 10
Survey Reveals App Poverty Line
To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin, or sign up for our weekly newsletter.
or email your comment to: email@example.com
|Last Updated ( Tuesday, 22 September 2015 )|