Microsoft revealed more about its Android-and-iOS-on-Windows Phone plans. Dubbed "Project Astoria" (Android) and "Project Islandwood" (iOS), these programs represent a large part of Microsoft's mighty effort to rescue Windows Phone from irrelevancy.
Simply put, Project Astoria (aka "Project A") and Project Islandwood will allow developers to create Windows apps using Android code and Apple's Objective-C code, respectively. This is made possible by Microsoft's Universal Windows Platform Bridge toolkit.
For Project Astoria, Microsoft promised:
Build Windows apps for phones with few code changes
Use a Microsoft interoperability library to integrate Microsoft services into your app with very little effort
Test and debug your app from your preferred IDE
Publish your app and get paid through the Windows Store
For Project Islandwood, Microsoft promised:
Import Xcode projects into Visual Studio
Make minimal changes to your iOS/Objective-C code to build a Windows app
Build and debug your Objective-C code from Visual Studio
Take advantage of great Windows services
Extend your app to take advantage of Universal Windows Platform features
On stage at Build 2015, Microsoft's Kevin Treadwell elaborated on Project A and Project Islandwood and gave us some demos.
On the Android side, devs can reuse their Java and C++ code and tweak it to take advantage of Windows 10 features such as Live Tiles, and they can distribute their wares in the Windows Store.
We saw earlier how the code can be easily extended to tap into Windows 10's keyboard, touch and navigation UI, design and capabilities, but there are more advanced features available as well.
Lost It! appUsing the Android fitness app Lose It!, Treadwell showed how, in the Windows 10 port, he was able to share his fitness data with a friend--using Windows 10's messaging.
Lose It! app -- Note the Live Tile in upper right cornerIn another demo using the app Timber, he showed how the port behaved like any other Live Tile (complete with flippy animation). When he mapped out a journey on Timber, the app tapped into Bing Maps instead of Google Maps.
In the iOS demo, we actually saw how a dev could convert its code to run on Windows 10. Treadwell pulled up the files and data for an iOS app (Math Dreams) and opened them in Microsoft's Visual Studio.
Math Dream app - Note notification in lower right cornerHe simply hit F5 to build and run the app, and that was it. Math Dreams, which is to be fair a very simple app, ran smoothly on Windows 10. He did, however, want to add an additional feature in the form of notification support. He opened two pre-written files, quickly tweaked the source code of Math Dreams, and rebuilt it with the changes implemented. He re-ran Math Dreams, performed an operation, and got a notification in Windows 10.
Project Islandwood gives iOS devs full access to Windows 10 API sets (such as, for example, Cortana), and they can integrate C++ code into a project and deploy the finished app in the Windows Store.
Both Project A and Project Islandwood will be available to devs after the launch of Windows 10, which is widely expected to occur at the end of July. Developers can sign up for Project Astoria here, and Project Islandwood here.
Microsoft Takes Aim
On its face, the ability to easily port Android and iOS apps to Windows 10 on phones is a huge deal for Microsoft, a significant opportunity for app developers, and an intriguing potentiality for end users. (On the other hand, there's some concern about how smoothly these ports might work in real life. Will the apps all run smoothly and maintain their carefully-crafted visuals, layout and so on? If not, devs will be far too gun shy to port their creations; providing a mediocre user experience is not good for business.)
However, make no mistake that this is a large part of Microsoft's attempt to entice users to Windows Phone. It's no secret that Windows Phone is not a popular platform in the U.S.; its market share is effectively a rounding error compared to Android and iOS. The company needed to do something drastic. And it has.
Topping Vertical Markets, And Rebuilding One
Microsoft is trying to turn the vertical integration paradigm espoused by Android and held in a vise grip by iOS on its head. You want iOS apps, Android apps, and our purpose-built Universal Apps? You can have them all right here, on your Windows Phone device. In one cunning move, that turns Microsoft's greatest weakness in the mobile market into its greatest strength.
The company has seen little success going with the (now traditional) mobile OS-app store tie-in, so instead of trying to beat Apple and Google at their own game, Microsoft changed the rules. Effectively, Microsoft has taken three vertical markets and created one big horizontal one.
Assuming this all works out smoothly, it could be a veritable coup for Redmond. It's also worth noting that horizontal integration is exactly what Microsoft is all about now--one platform on all devices. It wants all devices to enjoy the same essential Windows experience with Windows 10.
If it can suck in many of the apps populating the world's two largest mobile app stores in the process, all the better.
However, Microsoft's horizontal strategy is actually just a different sort of vertical one. Ironically, like Apple and Google, Microsoft is also trying to get consumers to buy into its platform and stay there. The Windows 10 experience is only superb if you rely on all of Microsoft's products and services.
For example, you'll want to be friends with Cortana on your phone and desktop. Your photos and docs will all end up in OneDrive (and you can browse your files stored in OneDrive from within File Explorer). Your email on your phone, on the Web, and on-device will all be wrapped up in Outlook. Project Spartan wants you to include Cortana in your browsing experience. And so on.
Developer Buy-In Is Key
Of course, this strategy will only be effective if developers buy in. Microsoft has gone to great lengths (and spent plenty of stage time at Build) assuring devs that porting these applications will be so, so, so easy.
That's crucial, because mobile app developers will only care to make anything for the Windows Phone platform if it's incredibly easy. Otherwise, the ROI just won't be there for most. (The fact that mobile apps can extend to the desktop and beyond thanks to Microsoft's Universal Windows Platform is another potentially powerful value add.)
The ports will also have to work seamlessly; otherwise, devs and users alike will quickly abandon the whole thing.
However, if Project Astoria and Project Islandwood prove to be successful, Microsoft's phone platform may have a fighting chance to reclaim some semblance of U.S. market share.