Working with Microsoft’s Surface Duo developer tools

New Surface hardware won’t be here until late 2020, but you can start building code now

Working with Microsoft’s Surface Duo developer tools
Bet Noire / Getty Images

Microsoft’s announcement of the Android-based Surface Duo folding phone last year came as a surprise; we expected only a Windows Core-powered dual-screen laptop. After the death of Windows 10 Mobile and the Windows Phone platform, the odds of Microsoft ever shipping another mobile device that wasn’t a tablet with LTE were scant. Especially a device running an operating system developed by another company.

But here we are, a few months on from the launch and still some time from the device sitting in anyone’s hands, with the first release of a set of developer tools that go into some detail how Microsoft intends to support folding screens with Android.

Bootstrapping a new ecosystem

There’s a lot to think about when writing code for dual-screen devices such as the Duo and the larger Windows-based Surface Neo. They’re not like the folding single screens used by Samsung and the like, using proven LCD screen technologies rather than newer, flexible OLED (organic light-emitting diode) films. It might not be as revolutionary an approach, but then Microsoft has always been a more pragmatic organization, and the design risks associated with having a visible hinge are relatively easy to overcome.

What really matters is getting applications onto the new devices, and Microsoft recently announced developer toolkits and emulators for both the Neo and Duo. Surface Neo’s tools will arrive soon, but the Duo’s are here already, with tools for Android’s own development platform and for Microsoft’s cross-platform Xamarin. It’s important to note that the Surface Duo is an Android device through and through, so existing and new Android applications will run on it, with support for Google’s Play services and the Play Store.

To continue reading this article register now

How to choose a low-code development platform