Much to the dismay of some viewers watching at home, Microsoft's BUILD developer conference today actually focused on technologies designed to benefit developers. However, some of the new developer technologies shown today may end up having profound impacts on Windows users. While Microsoft has never had any issues with making software available for Windows on the desktop, the same can't be said about Windows in the mobile space. Windows Phones and tablets have suffered from a lack of applications compared to their Android and iOS counterparts, and Microsoft hasn't been able to convince many developers to make Windows a priority for their mobile applications. Given this situation, Microsoft had to find another solution to the problem, and today at BUILD they showed what may very well be it.

The first big announcement was Project Astoria, which enables support for running Android applications programmed in Java or C++ on Windows 10 phones. During the keynote this was described as an "Android Subsystem" within Windows. The end result is that developers can bring their Android applications over to Windows 10 phones with minimal effort. There will still be issues with applications that link into Google Play services for features like Maps and location, but there are now far fewer hurdles for developers than there have been in the past. Microsoft demonstrated this during the keynote by showing the Choice Hotels application for Android running on a Windows 10 smartphone. The demo did run into a few issues, but it was still impressive to see.

What's even more remarkable is Microsoft's work to allow developers to use existing code from iOS applications programmed in Objective C to make Windows 10 applications. This new initiative is called Project Islandwood, and it allows developers can take their existing applications written in Objective C, have Visual Studio convert the Xcode project into a Visual Studio solution, and compile it for Windows 10. The demo shown on stage showed an application written for the iPad being compiled to run on Windows. Not only did it work well, but the application itself was not just a basic app. Apps using UIKit and Core Animation compile fine as Windows 10 applications, and it will be very interesting to see just how far this solution can go in bringing complicated applications over to Windows.

The demonstration during the keynote was a mathematics game which utilized the UIKit framework and Core Animation, and had very complication visual effects and animation. Despite this, the demo worked even more smoothly than the Android application demonstration, and even worked with input using the mouse. Microsoft also revealed that the ability to easily bring applications programmed in Objective C to Windows 10 is not something coming in the distant future, but is a technology that exists now and has already been put to use by game company King in bringing their Candy Crush Saga game to Windows Phone.

One important thing to note is that while Project Islandwood for iOS applications allows developers to create universal Windows apps, Project Astoria is strictly for bringing Android applications to Windows 10 phones.

These two announcements from Microsoft may end up being a game changer for Windows 10 applications on the desktop and more importantly on mobile. Developers still need to be convinced to focus on Windows, but if moving applications over from iOS and Android is as easy as Microsoft has claimed then it shouldn't be very difficult to get developers on board. Only time will tell how this ends up playing out.

POST A COMMENT

78 Comments

View All Comments

  • Jihan Tamim - Thursday, April 30, 2015 - link

    Microsoft doing a great job..and also take some good marketing system Reply
  • ABR - Thursday, April 30, 2015 - link

    As a Lumia owner I can't say I'm that jazzed about this. There are enough apps and I like the phone because I like the way it does UI compared to other platforms. I don't really need 9 zillion non-native apps and a halt to native development because of this easy way out. If that happens I'll probably just end up getting an iPhone, where the apps'll run better anyway. Reply
  • kyuu - Thursday, April 30, 2015 - link

    You don't seem to understand. These aren't being emulated. They will be complied and run on Windows phone natively. There is a concern about UIs being all over the place, but at this point it's either use an app with a UI designed for iOS/Android or none at all. This won't do anything to already existing apps and newly created apps for Win Phone that follow the UI paradigms. Reply
  • Gigaplex - Thursday, April 30, 2015 - link

    Running natively (no emulation) and using the native UI are two separate topics. ABR is worried about the latter. Reply
  • SirPerro - Thursday, April 30, 2015 - link

    It is interesting how MS is positioning itself between a rock and a hard place.

    On one hand they need the apps to arrive to Windows Phone.

    On the other hand this Blackberristic approach means apps in windows phone will potentially be even slower than Android itself. Plus, binding their fate to whatever Google decides to do with Android is risky.

    I guess the idea is to get small devs onboard and let them optimise their apps to "native" apps in the future, but it's risky anyway.

    (The alternative is to brutally lag behind competition anyway)
    Reply
  • V900 - Thursday, April 30, 2015 - link

    It won't bring apps. Not enough to make a difference anyways.

    Why? It still requires the developer to play a part, and we know from experience how that went with BB10...

    Among other reasons, Windows Phone doesn't have enough users toile it worth the developers times and efforts.

    "But, but it's a market of millions of potential users!"

    And? It would be relatively easy to port many existing apps and games from iOS to Android. But you still see many of the best ones remaining exclusive to iOS. If they're willing to miss out on a market of hundreds of millions, what makes you think they'll come running to Windows Phone?!?
    Reply
  • TEAMSWITCHER - Friday, May 1, 2015 - link

    Anyone know what technology they are using to make the iOS ports happen? Anyone care to guess if Apple will try a DMCA lawsuit for copying Apple API's. They specifically said they support UIKit and Core Animation, and I don't know how you could do that without stepping on Apple's copyright. Did Microsoft pay Apple a licence fee? Reply
  • Penti - Wednesday, May 6, 2015 - link

    Oracle hasn't stopped Android yet despite it being built on IBM's implementation of the class library. Your free to convert API's and you wouldn't even need a runtime on the device to support it if it's done as a conversion/compiled to native api's by the toolkit. API's aren't copyrightable, not yet at least and you don't need to copy any software to support a subset of the API.

    Stuff that stops porting to WP is that it's quite hard to just port normal C or C++ apps from the mobile platforms (and PC). Most early ports were complete rewrites in C#. The C support has pretty much been unofficial and there's no OGLES support either which means companies that don't do DX (or use an engine that supports it) might need to do a DX port of their game. C++ is still a bit different than on other platforms/frameworks.

    Edge browser is still a Win32 library (dll) in Windows 10 and 10 mobile for example. VLC still hasn't managed to do a decent port of VLC to Windows Runtime. On a platform like Android (using the NDK or third party tools) it's perfectly fine to port (portable) C and C++ (or use a third party implementation of C#) and do stuff like a full blown browser on the other hand. A C/C++ game engine can port fairly easy between iOS and Android using much of the same code on both.
    Reply

Log in

Don't have an account? Sign up now