Mono for Android has now been released as version 1.0. It used to be called MonoDroid but trademark issues forbid the use of the word "Droid" in this context.

It brings the full Mono VM to the Android so that you can develop applications using C#. In addition the Dalvik APIs have been bound to C# so that you can make use of many of the built-in facilities of the Android OS. The OpenTK library has also been ported so that you can share the same OpenGL code across Windows, Linux and iPhone.

The current release works with C#, but in principle it should work with other .NET compilers. It comes with a Visual Studio 2010 add-on that allows you to target Android from a familiar environment.

It provides an alternative route for Windows .NET developers who want to create mobile phone apps but don't want to learn or write Java and don't really see Windows Phone 7 as a good bet. It also provides a way of sharing code used to program Windows Phone. If you regard MonoTouch as a way of creating apps for the iPhone then you might be able to share some code with this platform as well.

There are some limitations, however. In particular you can't use the new dynamic features of C# 4.0. In addition new class libraries are provided to the C# application to allow it to access native Android facilities such as the hardware. Not all of the .NET Framework is available either - in particular none of the Forms of Drawing classes are provided - the UI is provided by native Android classes and TK. What this means is that in practice any sharing between a Windows Phone 7 app and an Android app is going to be restricted to core code only. Basically Mono for Android is simply providing you with a way of using C# there are still a lot of new classes to learn how to master and the basic idioms of creating an Android app - Activities, Intents, creating the UI via XML etc.

The good news is that there is a free to download and use version - but it is limited to running the resulting app on the emulator. You can't download your work to a real Android phone unless you buy a commercial licence. The Professional Edition license costs $399, and an Enterprise Edition is also available for $999 per year. Existing MonoTouch users have a 50% discount off their purchase of Mono for Android for a limited time.

Look out for a forthcoming I-Programmer introduction to Mono for Android to get you started using it.

If you would like to be informed about new articles on I Programmer you can either follow us on Twitter, on Facebook, Digg or you can subscribe to our weekly newsletter.

More Information

Mono for Android

http://monodroid.net/

Mono for Android - Miguel de Icaza

MonoDroid - .NET for Android