Microsoft has faced issues in gaining acceptance of its Universal Windows Platform (UWP) for developing Windows apps to run on multiple form factors. But the company nonetheless is forging on with tooling advancements for UWP.
With UWP Community Toolkit 1.2, Microsoft is providing new helpers for everyday tasks and a control to help build user experiences. The company this past spring heavily promoted UWP, despite questions about backward compatibility and whether it was a closed platform.
Regular releases of the toolkit, which was first introduced in August, demonstrate Microsoft's continued commitment. "The focus of this version was to stabilize current features while adding the most wanted ones that were missing," said David Catuhe, principal program manager at Microsoft.
The kit adds capabilities on top of the Windows 10 SDK and the Visual Studio platform. The 1.2 release includes such helpers as
HttpHelper, for securely dealing with HTTP requests;
BackgroundTaskHelper, for working with background tasks;
Printhelper, to print XAML controls; and
DispacherHelper, to work with tasks that need to run on a UI thread. A
SystemInformationHelper, meanwhile, gathers all system information into a single class while
DeepLinkHelper manages deep links. Also featured is a
MasterDetailView control, to help with development of master/detail user experiences.
Microsoft also updated several features, including ImageCache, to provide more robust caching, and Facebook service, which adds support for paging when requesting data. Version 1.3 of the toolkit, due January 25, is slated for improvements in areas such as deep-link parsing and animations.
"UWP has certainly had to scale its ambition in light of Microsoft's shifting mobile strategy," analyst Al Hilwa, of IDC said. "UWP was born in an age when Microsoft was still fighting for a bigger share of small-screen touch devices, that is to say phones. This has changed in that the Windows Phone platform now appears much more limited in focus and ambition." These days, UWP is about an approach to code reuse and application portability as much as possible across multiple devices, he said.