With the release of the Windows 10 Anniversary Update came a new set of tools: the
Windows Device Portal. Device Portal is a small web server baked into every Windows device that you can enable once you’ve turned on Developer Mode. We built Device Portal as the starting point for a new generation of diagnostic tooling for Windows – tools that work on all your devices, not just your desktop.
We recently released our
Device Portal Wrapper projecton GitHub and have now added it to
NuGet. Our goal with the wrapper is to make it easy to build new tools on top of Device Portal. It wraps the Device Portal REST APIs in a managed C# layer, providing an object model for responses and an easy way to connect with the Device Portal on your device.
Using your browser, you can access a variety of tools hosted on the device via the Device Portal Wrapper, each one a webpage backed by
documentedREST APIs. These tools include:
- App installation, launch, and file management
- Performance metrics, both all-up and per-process
- Crash and live dump collection
- ETWcollection, both streaming and via WPRprofiles
- Networking information (ipconfig and profile management)
- Platform-specific tools like Mixed Reality Captureon the HoloLens
- More tools are being added, all the time
What can I use the wrapper for?Currently, the wrapper supports the APIs that Device Portal users use most such as app management, performance metrics and the
Isolated Storageexplorer. Additionally, most of the device-specific features are supported, like Mixed Reality Capture (record video of the real world + Holograms) on HoloLens and screenshots on the Xbox. For an example of how you can build with the wrapper, you can check out the
sample appsincluded in the repo:
Today the library can be used with either .NET 4.5.2+ or UWP. It can target any device operating on the Windows 10 Anniversary Update, as well as earlier Windows releases (10586) on IoT and HoloLens.
Coming up nextThere are still a couple of REST APIs left to implement for our
1.0 release, which we’re currently working on. For 1.0, the wrapper will support all APIs across Core and each device family. Looking ahead, we want to support .NET Core so that you can use the wrapper from Linux as well.
In the future, the Device Portal team will be working to keep the wrapper up to date with new Device Portal REST APIs. We’re working hard to add new tools and features to Device Portal all the time, and we want to make sure that Wrapper stays up to date as well.
Device Portal <3 Open SourceThe UI in Device Portal was made possible by
SlickGrid,
JQueryand
Smoothie, among other great OSS libraries, so we’re no strangers to the awesome power of open source. One of our major design considerations in Device Portal was the use of a well-supported,
documentedprotocol. We chose REST as every major programming language has an abundance of libraries to support communicating over REST with a server. And pretty much as soon as Device Portal was released, we saw enterprising developers building apps and tools using those REST APIs. So, we figured we’d help out and try to save everyone some time – thus the Wrapper project is MIT-licensed, and definitely
accepting pull requests!
We can’t wait to see how developers use the Wrapper project and where they want to take it. We love feedback, so always feel free to
submit a GitHub Issuewith any questions or ideas you might have. If you have any feedback for Device Portal itself, we keep a close eye on our
UserVoice– we want to know what tools would make your life easier, so let us know.
Happy hacking!
DownloadVisual Studio to get started!
The Windows team would love to hear your feedback. Please keep the feedback coming using our Windows Developer UserVoice site. If you have a direct bug, please use the Windows Feedback tool built directly into Windows 10.