Xamarin has ported Android from Java to C#

The code could be used to build Android phones that don't rely on Java

Xamarin has ported Android to C# in an effort to improve its own development tools and show that the OS doesn't have to be dependent on Java.

Development tools vendor Xamarin was started in May last year to take care of the Mono project, an open source implementation of the .NET framework, after Attachmate decided to drop it following its deal with Novell, where Mono had its home previously.

Today, Xamarin offers cross-platform development tools for iOS and Android.

When working on how to improve the performance of its tool for Android, the company hit a wall because of performance issues with Dalvik, which is Android's virtual machine, it wrote in a blog post on Tuesday.

One idea the Xamarin team had was to translate Android's source code to C#. A few months later skunkworks project XobotOS was born.

The result of the project's efforts is that most of Android's layouts and controls have been ported to C#, and the code is available on GitHub, according to the blog post.

"Turning XobotOS into something that can run on phones can be done ... Someone like Google or Amazon could do it and get 10 years of performance optimization," said Miguel de Icaza, CTO at Xamarin.

As big proponent of C#, de Icaza thinks Google was a little premature when it decided to go with Java for Android. Google is now embroiled in a court battle with Java owner Oracle over whether it violated patents and copyrights in its use of Java.

"I think that C# gets overlooked because it came from Microsoft originally. But today it is an ISO standard," said de Icaza. He contrasts that history with Java's, which Sun submitted for standardization but then withdrew.

Microsoft has also included C# in its Community Promise, which states that the company "irrevocably promises not to assert any" claims against it.

In the end, Xamarin wants to concentrate on improving its development tools, and so XobotOS will not be a focus going forward, the company said.

However, a few technologies that have come out of the effort will be included in future versions of its products.

For example, today, Mono for Android accesses the underlying graphics libraries via Java, but with the code Xamarin built for XobotOS it can skip that step and get straight to the native rendering code in Android's graphics engine.

"Graphics applications will run faster with Mono and C# than they do with Dalvik and Java," said de Icaza.

Xamarin now has the tools necessary to replace some chunks of Java code with C# code where performance is critical and when C# can offer an improvement, as well.

The translation was made easier using a tool called Sharpen, which was originally created by db4object. Xamarin improved the tool, making it more scalable and updating it to work with modern Java idioms, while doing the actual translation work, according to de Icaza.

"Sharpen has a lot of benefits, not only for us but for other people, so we open sourced all of our code. We are hoping it will be useful for other people that are looking at doing Java to C# translations for whatever needs they might have," said de Icaza.

Along with XobotOS, the new version of Sharpen was also published on GitHub.

Send news tips and comments to mikael_ricknas@idg.com

Join the newsletter!

Or

Sign up to gain exclusive access to email subscriptions, event invitations, competitions, giveaways, and much more.

Membership is free, and your security and privacy remain protected. View our privacy policy before signing up.

Error: Please check your email address.
Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Mikael Ricknäs

IDG News Service
Show Comments

Cool Tech

Toys for Boys

Family Friendly

Stocking Stuffer

SmartLens - Clip on Phone Camera Lens Set of 3

Learn more >

Christmas Gift Guide

Click for more ›

Brand Post

Most Popular Reviews

Latest Articles

Resources

PCW Evaluation Team

Aysha Strobbe

Microsoft Office 365/HP Spectre x360

Microsoft Office continues to make a student’s life that little bit easier by offering reliable, easy to use, time-saving functionality, while continuing to develop new features that further enhance what is already a formidable collection of applications

Michael Hargreaves

Microsoft Office 365/Dell XPS 15 2-in-1

I’d recommend a Dell XPS 15 2-in-1 and the new Windows 10 to anyone who needs to get serious work done (before you kick back on your couch with your favourite Netflix show.)

Maryellen Rose George

Brother PT-P750W

It’s useful for office tasks as well as pragmatic labelling of equipment and storage – just don’t get too excited and label everything in sight!

Cathy Giles

Brother MFC-L8900CDW

The Brother MFC-L8900CDW is an absolute stand out. I struggle to fault it.

Luke Hill

MSI GT75 TITAN

I need power and lots of it. As a Front End Web developer anything less just won’t cut it which is why the MSI GT75 is an outstanding laptop for me. It’s a sleek and futuristic looking, high quality, beast that has a touch of sci-fi flare about it.

Emily Tyson

MSI GE63 Raider

If you’re looking to invest in your next work horse laptop for work or home use, you can’t go wrong with the MSI GE63.

Featured Content

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?