jerdog · May 6, 2012 at 07:00 am

C#: The Future of Android?

If you haven’t heard, Google and Oracle are locked in a dispute over the Android OS and its use of Java code. This struggle could have strong repercussions for the world’s most popular mobile OS.

With that realization Xamarin, makers of the open-source and cross-platform mobile .NET application development platform Mono, sat down almost a year ago to look at the Android platform and see what could be done to improve battery life and Android application performance. Eventually their team came to the conclusion that C# offered a more robust base than Java, with fewer coding limitations and faster performance. In their words:

Over and over we came back to the basics: Dalvik is a young virtual machine, it is not as performant or tuned as Mono and suffers from many of Java’s performance limitations without the benefit of the high-end optimizations from Oracle’s HotSpot. One crazy idea that the team had at that dinner was to translate Android’s source code to C#. Android would benefit from C# performance features like structures, P/Invoke, real generics and our more mature runtime.

Although nothing happened back in July, this idea stuck in the back of our minds.

Fast forward a few months: Mono for Android is doing great, and we are starting to think again about improving our own product’s performance on Android. What if we could swap out Java with faster C# and get rid of various Dalvik limitations in the process? Could we create an Android phone completely free of Java, and free of the limitations of the Dalvik VM?

We decided it was crazy enough to try. So we started a small skunkworks project with the goal of doing a machine translation of Android from Java to C#. We called this project XobotOS.

Xamarin then began the XobotOS project to port Android 4.0 to C# using their open-source tool Sharpen. While they no longer are focusing on XobotOS, they have open-sourced the project on GitHub. Could this be the answer to Google’s current legal battles? Given the depth of the necessary ecosystem changes, this seems unlikely. However, it presents an interesting possibility for those willing to tinker with the open-source code above.


_________
Want something on the XDA Portal? Send us a tip!
TAGS:

jerdog

jerdog is an editor on XDA-Developers, the largest community for Android users. Jeremy has been an XDA member since 2007, and has been involved in technology in one way or another, dating back to when he was 8 years old and was given his first PC in 1984 - which promptly got formatted. It was a match made in the stars, and he never looked back. He has owned, to date, over 60 mobile devices over the last 15 years and mobile technology just clicks with him. In addition to being a News Editor and OEM Relations Manager, he is a Senior Moderator and member of the Developer and Moderator Committees at XDA. View jerdog's posts and articles here.
Mathew Brack · Aug 1, 2015 at 09:00 am · no comments

Voices Of XDA: Orbiting The Earth With Android

Editor’s note: This week's feature has been written by forum member RowHanSolo and takes a look at the exciting prospect of launching satellites fitted with little more than an Android phone as an onboard computer. From a university to NASA, multiple projects like this have launched!   Technology is an ever-growing industry, regardless of which corner you look at. However, each area of technology has its limitations on what it can do and how far it can expand. For satellite technology,...

XDA NEWS
Mike McCrary · Jul 31, 2015 at 03:56 pm · 1 comment

CloudPlayer: DIY HiFi Music Streaming Solution

In our Helpful Guide to Music Streaming Services, we mentioned several different services that offer ways to stream catalogs of music directly to your device. While each service has their benefits and drawbacks, the common theme among them is to give you access to a vast library of music without the need to store your own, and charge you a monthly fee for the privilege. But what if you already had access to your own catalog of music? Sure, there...

XDA NEWS
GermainZ · Jul 31, 2015 at 01:03 pm · 1 comment

Optimize Battery Life with This Useful App

Battery life is an important aspect of your smartphone, especially if you use it for more than just calls on the go. Since you're on XDA, you probably do and want to get the most out of your battery. Now, you can't magically expand its size but no matter how much its capacity is, you should make sure it's not draining faster than it should be. Your phone's processor runs at different frequencies when you're using the device. The CPU...

XDA NEWS