How Nokia runs Windows Phone apps on Android

February 28, 2014

    Nokia-XL-Dual-SIM-MixRadioEver since Nokia jumped off its burning platform and into the arms of Microsoft it has focused its software development on Windows Phone. But since the company announced its three new Android handsets it has become clear that Nokia has also been working to get its apps and services on Android. The problem for any company that works across multiple operating systems is that porting software can be expensive and time consuming.

    Android, Windows Phone and iOS all use different programming languages and design philosophies and although the Software Development Kits (SDKs) are freely available, a program written for Android won’t run on Windows Phone and vice versa, not without some serious changes. Android uses Java as its main development language (although it does have a native development kit so code written in languages like C can be compiled for Android). Windows Phone uses Microsoft’s¬†.NET Framework together with¬†Visual Basic or C#. Apple’s iOS uses Objective-C much like Mac OS X.

    One interesting aspect of the Nokia X announcement is that Nokia has managed to get its apps and services like Nokia MixRadio on to Android. The question is how? Did Nokia re-write the app in Java? Did it employ a new team of developers to start from scratch and create new a MixRadio app? Actually neither. What Nokia did was to use a special bit of software from a company called Xamarin that basically lets Windows Phone app run on Android.

    One example of this is the Nokia MixRadio app, which started its life as a Windows Phone and Windows Store application and using the power of the Xamarin platform, is shipping as a pre-installed app on Nokia X devices -- Chris Hardy.

    OK, it isn’t quite that simple, but¬†the Nokia MixRadio app started its life as a Windows Phone app and by using Xamarin’s platform the app was ported over to Android without a massive re-write.¬†Xamarin are a company that specialize in bringing¬†Microsoft’s¬†.NET Framework to other platforms besides Windows. In fact its aim is to allow developers to¬†write apps entirely in C# and share the¬†same code on iOS, Android, Windows and Mac. And if the¬†MixRadio app is a good measure it looks like they are succeeding.

    According to a blog post by¬†Chris Hardy of Xamarin, Nokia used Microsoft’s¬†Portable class libraries (PCLs)¬†and the popular third party MVVM library¬†MVVMCross¬†to enable the¬†.NET version of the¬†MixRadio app to run on Android, while¬†still taking advantage of the Nokia X platform’s nuances and user interface. Microsoft originally envisioned the PCL project as a way for .NET developers to write code that would¬†run without modification on¬†Windows 7, Windows 8, Silverlight, Windows Phone, and Xbox 360. Xarmin then brought the PCL to Android and iOS, making it easier for C# developers to share code across devices.¬†

    Now that the MixRadio app is running on Android, Nokia wants to remove all the legacy code from the Windows Phone and Windows 8 versions of MixRadio and move them over to the PCL. This will mean that the Android and Windows Phone versions will be built from the same shared codebase.

    Could Microsoft infiltrate the Android eco-system even more?

    Now that Nokia has shown its ability to port .NET apps to Android, will Nokia and/or Microsoft use the technique for other apps and services? If Nokia continues to develop its Nokia X platform then it is likely that some of those enhancements will come in the form of apps taken directly from Windows Phone or at least from Nokia’s repository of Windows Phone apps.

    It is technically possible for Nokia to release Nokia HERE maps and MixRadio for other Android devices and it would be possible for Microsoft to push its way further into the Android eco-system by continuing to offer its apps and services on any Android phone, not just the Nokia X.

    Microsoft has already done this to some extent in that OneDrive, My Xbox Live, OneNote ¬†and Bing are available for Android. However one of the value propositions of Nokia’s handsets (both Windows Phone and Android) are that they have unique apps and services that you can’t get on other devices. So while it is technically possible to bring all these apps and services to the general Android marketplace, it might not make good business sense.

    Comments

    • mohd sultan

      That means any android phone can use this app??????

      • http://www.garysims.co.uk garysims

        Technically it may be possible to take the software off and sideload it on to a standard Android device, it depends if Nokia has put any special system calls in the code that can only be fulfilled by the Nokia X platform. I am sure someone over at xda-developers will be working on it!

    • Me

      You made a small mistake in paragraph four; it’s gotta be “to allow developers to write”
      Concerning the article I think it’s great that there’s a possibility to use WP apps on Android and so on

      • http://www.garysims.co.uk garysims

        Thanks… Fixed…

    • Nico

      Xamarin has long been used for portable .NET platform across Android & iOS. Unfortunately they’re costly.
      Anyway I’m more interested to install Nokia Store on my Nexus! http://forum.xda-developers.com/showthread.php?t=2664212

    • Guest123

      I wouldn’t mind using Nokia’s Here maps :)

      As far as WP apps on Android, for the most part it seems redundant. Android has nearly all WP apps, just a few Nokia items are missing.

    • Anders CT

      No, because Xamarin is way too expensive.

    • fredphoesh

      The pigs at Nokia and Microsoft using Android but making it impossible to use ANY GOOGLE APPS on their Android phone – without rooting it… What a spiteful, ugly bunch. Go to hell Nokia.

      • Shark Bait

        Wrong, Google make it impossible to use their apps on anything they haven’t approved. Not Nokia

        • JosephHindy

          Shark Bait is right. When you fork Android, you lose the ability to use Google Apps.

          Just ask Amazon. They forked Android for their Kindle Fire OS and it doesn’t have Google Apps either. it’s a Google thing.

          • http://droidcent.com/ Marsel

            So don’t fork Android? Only reason Kindle series is popular is cause it’s dirt cheap and Amazon is a hugely popular retailer Microsoft isn’t winning any popularity contests. Infact nobody that I know even likes windows 8/8.1 they all went back to 7.

            • http://www.garysims.co.uk garysims

              Well technically it is Nokia who needs to be popular in this equation, not Microsoft. What you said about Amazon could apply to Nokia, i.e. they are making them cheap and Nokia is still a popular brand. These two factors alone could carry the X a long way.

              As for “So don’t fork Android.” There are two point. 1) Android is an open source project, anyone can fork it and change as they wish. If it is a success or a failure it is a testament to the principles of open source.

              Also you have to recognize that from a business point of view Microsoft doesn’t want Google’s services on the Nokia X, so even if it wouldn’t be legally possible, Microsoft don’t want it. And that is a perfectly fair business decision and the worldwide market will decide if Android without Google is useful. Devices like the Kindle Fire suggest that the general consumer doesn’t care as long as they get Candy Crush and Twitch Moth (i.e. flappy bird).

              And the end of the day we will have to wait and see what the sale figures are after 1 year. That will be the deciding factor.

            • JosephHindy

              ^ This

    • narender singh

      Android not need to run windows app, windows need how to run android app in windows phone.because they tell users in every new (latest) app coming soon coming soon in windows phone.
      finally come with bugs……………..

    • http://sljonesdigital.com SLJonesDigital

      So basically all nine WinPhone apps will run on Android?

    Popular

    Latest