Android being translated to C#

Android being translated to C#
If you follow the news even a little bit, you'll know that Google has been having a bit of trouble with Oracle over the use of certain Java code in Android. So, a group of developers came up with a pretty simple solution: what if Android weren't based in Java? What if, instead, Android could be translated into C#? Turns out, that might not be such a terrible idea. At the very least, it could make Android even faster than it is now. 

The team at Xamarin knows quite a bit about C# and .NET, which it has used to help create a development platform called Mono, which allows for the creation of iOS or Android apps written in C# rather than Objective C for iOS or Java for Android. The apps created can be easily translated for use on either Android, iOS, or Windows Phone, and can be written with full Visual Studio support. And, the team claims that apps built using their platform run better and use less battery than natively written apps. 

Given that background, it was just a short jump for the team to decide to translate the entire Android system into C#. So, they built a tool called Sharpen, which has been translating Android from the code found in the AOSP repository. Xamarin began with translating the 2.x code last year, and started work on Android 4.0 this year. The team says that Android Mono (C# virtual machine) is actually faster than Dalvik (Java VM), and shows some nice bar graphs which seem to corroborate that story. 

The Xamarin Android translation has been named XobotOS, and has been made available on github, so devs can jump in and play around with it. The work is still early, but it has been running well in testing on a Linux desktop. We're interested to see this running on an actual mobile device. 

FEATURED VIDEO

23 Comments

1. DroidGod

Posts: 48; Member since: Jul 09, 2011

Sounds like a possible nice investment.

13. iCandy

Posts: 46; Member since: Dec 07, 2011

Well, there is a bit here that wasn't said, and needs to be. C# was designed and engineered by Microsoft and is not in its whole a freely available technology. Under the "Microsoft Community Promise", M$ has claimed it will not bring legal action against any Open Source implementation utilizing C#, but many of the technologies at the root of C# and .NET are subject to M$ patents. In other words, its all fun and games until the application competes with a M$ counterpart. Does a C# version of Android compete with any M$ product, hmm let me see...

15. remixfa

Posts: 14605; Member since: Dec 19, 2008

if thats true than that's a good... and dangerous point. I would assume that on the off chance Google decided to officially go to this type of route they will secure any needed patents and such. I doubt they would Willy nilly step into another mess like oracle again.

2. ph0adcbeit

Posts: 15; Member since: Oct 19, 2011

When all of android is converted to C#. What is the plus side for the consumer?

3. GuiltyBystander

Posts: 199; Member since: Mar 05, 2012

It clearly states in the article that it will use less battery and run faster.

8. jellytime

Posts: 135; Member since: Dec 05, 2011

It isn't written in the article but also app develeopers will have it alot easier to develop their apps becuse c# visual basic is very simple. But I might be wrong because i started learning c# some weeks ago.

14. androiddownsouth

Posts: 598; Member since: May 02, 2012

This is win. C# is easier. I hated JAVA and actually enjoyed VB and C#. And yes it is faster and easier to program. I do hope they go this way.

16. remixfa

Posts: 14605; Member since: Dec 19, 2008

c# is way easier to me than Java. its been a little while since I've programmed either but I doubt that much has changed. boolyean nightmares! lol

10. jove39

Posts: 2147; Member since: Oct 18, 2011

Ever wondered...why WP7 runs so smooth even on last generation processors?

4. DroidGod

Posts: 48; Member since: Jul 09, 2011

^ "the team claims that apps built using their platform run better and use less battery than natively written apps."

5. Mxyzptlk unregistered

Until they sue Google later on. We all know once something gets popular, doesn't necessary mean it's good, it becomes a target.

6. dcgore

Posts: 234; Member since: Feb 24, 2012

That would be nice. Android feels laggy compared to iOS for instance.

7. tedkord

Posts: 17410; Member since: Jun 17, 2009

Are you reading the same reviews as Taco? Whatever minimal, occasional lag that Android had with Froyo and Gingerbread, has been eliminated with ICS. Hardware has finally caught up to the power of Android.

12. Veigald

Posts: 290; Member since: Jan 13, 2012

"Hardware has finally caught up with the power of Android"? Did you seriously write that? More like Android is finally turning into a decent OS with ICS, and can now run semi-smoothly on dual cores and better.

17. tedkord

Posts: 17410; Member since: Jun 17, 2009

Nope. I wrote it right. Android was always a more ambitious OS than iOS. It was designed to do anything, be pc-like. Android became a decent OS with Froyo. With ICS, its awesome.

19. Veigald

Posts: 290; Member since: Jan 13, 2012

Wow, you really are a fanatic, aren't you. Android was always meant for mobile devices, but is only now really fitting into the hardware available. ICS is a good OS, for the 5% of android users that have it. On the other hand, hardware development has for sure been pushed further by android's popularity, so we should in a sense be happy it wasn't mature enough before.

20. tedkord

Posts: 17410; Member since: Jun 17, 2009

Not a fanatic, a realist. I'm not saying Android didn't have issues, cupcake and donut were pretty bad, eclair was fair at best. Froyo was decent. Gingerbread was pretty good - my thunderbolt is on gingerbread, and its buttery smooth, no lag, no force closes, and that's with a single core, verizon's crapware removed, and a custom Rom. Even with HTC Sense, which is a hog, its smooth. And yes, Android always was more ambitious. I didn't say it was designed to work on a pc, it was designed to provide a more pc-like experience on a portable device. Whereas iOS is designed around Apple's self imposed limitations, Android is designed to be anything the user wants, and do most anything a pc can do.

21. remixfa

Posts: 14605; Member since: Dec 19, 2008

I'd say Ted hit it right on the head.

9. protozeloz

Posts: 5396; Member since: Sep 16, 2010

that would be nice. wonder how app a will work. they could roll out a version of android that Runs both and having devs eventually move to C# if it skyrockets android performance should be worth a try

11. xtremesv

Posts: 299; Member since: Oct 21, 2011

Bad idea. As Microsoft owns C# sooner or later they will sue Google the same way Oracle did.

18. HugeTroller

Posts: 80; Member since: Apr 27, 2012

Its Microsoft's showtime! hahaha spydroid you are dead

22. atheisticemetic

Posts: 377; Member since: Dec 18, 2011

most of my force closes are probably due to a semi-colon put in the wrong place!! damn you java! ;)

23. ntechcomm

Posts: 1; Member since: Aug 14, 2012

Android is Linux based already, why not write the whole thing in C, C++? Even though C# is faster than the current JVM envrionment, it is still running in a virtual machine and what is keeping M$ from changing the license terms? Android should run like a scaled back Linux OS with JVM running apps.

Latest Stories

This copy is for your personal, non-commercial use only. You can order presentation-ready copies for distribution to your colleagues, clients or customers at https://www.parsintl.com/phonearena or use the Reprints & Permissions tool that appears at the bottom of each web page. Visit https://www.parsintl.com/ for samples and additional information.