Rumors about Microsoft's plans to enable Android apps on Windows and Windows Phone have been swirling for more than a year.
On the opening day of its Build 2015 developers conference, Microsoft execs went public with how the company is hoping to get not just Android, but also iOS apps, in its Windows 10 Store. And the strategy is somewhat different from what many developers and company watchers were anticipating.
On the Android front, Microsoft is adding a layer to its Windows 10 Mobile operating system that will allow Android Open Source Project (AOSP) to run as a subsystem -- similar to the way that it traditionally ran POSIX as a subsystem in Windows. Android developers will be able to submit versions of their apps, written in Java or C++, to the Windows Store in he form of APKs and have those apps work on Windows Phone 10 devices. Android developers should be able to start submitting apps to the Windows 10 Store some time in the next few months.
"Some people might call this emulation," said Operating Systems Group President Terry Myerson, in an interview at Build. "But it's really about subsystems (although) there are aspects of emulation in here."
On the iOS side, Microsoft has developed an Objective-C compiler which will enable iOS developers to recompile their apps so they can work on Windows 10 Mobile devices. That compiler will be available to developers as of today, April 29.
These revamped Android and iOS apps will be Universal Windows Apps. As such, they'll be able to do things on Windows Phones running Windows 10 that they can't do on Android phones or iPhones. They'll be able to be deeply integrated with Cortana, Microsoft's personal digital assistant, as well as Xbox Live. They will be able to be extended with in-app purchasing and to be available as Live Tiles.
Because most of the binaries for these apps will be for ARM, and won't support mice and keyboards, Microsoft isn't positioning them as being available for Windows 10 PCs or desktops. This play is more about bringing these revamped Android and iOS apps to phones.
"The theme is to start with your existing code base, and then extend," Myerson said. "We want to embrace devs where they are." (Yes, Myerson really did use the infamous "embrace and extend" terminology. But there was no talk of extinguishing.)
Microsoft is looking for ways to try to close the app gap with Windows 10. As of the end of September 2014, Microsoft had more than 527,000 "Metro-Style"/modern apps in the Windows Store and Windows Phone Store combined. Of these, about 340,000 were Windows Phone apps, Microsoft officials told VentureBeat. Comparatively, there were 1.3 million apps in the Apple app store and 1.3 million apps in the Google Play Storeas of the end of September.
In turn, Microsoft execs are hoping that Android and iOS developers will be interested in bringing their apps to the company's Universal Windows Platform because it will help them reach customers they don't already have.
The Universal Windows Platform, to which Microsoft previously referred as the Universal App Platform (UAP) sits on top of the Windows core. It's a superset of WinRT, the Windows 8 and Windows RT runtimes.
For the last few years, Microsoft officials have been evangelizing the idea that "One Windows" running across a variety of device types will enable developers to create universal apps that will build on a single runtime, use an increasingly similar set of application programming interfaces (APIs) and developer tools and be available from a single store.
The new Android and iOS tooling aren't the only new additions to Microsoft's developer arsenal for Windows 10. At Build today, Microsoft also reiterated that developers will be able to take their hosted Web site codes and wrap it so that it works as a Windows Store app.
Additionally, Microsoft also will be enabling .Net and Win32 apps to be available in the Windows Store. Currently, Microsoft doesn't allow Win32 apps to be purchased directly and downloaded from its Windows stores. Microsoft will use its App-V virtualization technology to make these applications available as sandboxed apps inside a virtualization container.
Given that 16 million Win32 and .Net apps are used every month, according to Microsoft's own figures, this is a potentially large number of new apps which may come to the Windows 10 Store.
A Microsoft exec disclosed the company's plans to make Win32 apps available in the Windows 10 Store in a blog post late last year, which the company subsequently removed because officials didn't want to reveal its strategy at that point.