Writing Android apps in C# using MonoDroid
As C# developers, many of us would prefer to write Android Apps in C# as well. Novell had promised us MonoDroid, but we were quite concerned as to whether MonoDroid would ever be released when Novell was dismantled.
However, Xamarin spawned from the ashes like a phoenix to restore the viability of MonoDroid, restoring our hopes to writing in C# for the Android platform.
Though I am hopeful that MonoDroid will become popular allowing C# to be a commonly used language for Android devices, there is still some question as to whether Xamarin and its MonoDroid product will survive.
Xamarin is a new company and needs to survive first. Its business is to sell MonoDroid, which is not open source, but is a proprietary product. Unfortunately, MonoDroid may cost too much, preventing adoption among app developers. Xamarin requires a customer base and a continual adoption rate if it is going to survive. If the company folds, what is going to happen to the library and the apps that use it?
Is Development with MonoDroid Free? Yes and No!
Yes and no.
Yes because anybody can use and develop with MonoDroid at no cost. It isn’t until you need to publish an app to the app store that you need to buy a license. You can use the MonoDroid trial for as long as you want. Here is a quote from the trial website. [2]
The evaluation version of Mono for Android does not expire, but enables development and testing against the Android Emulator only.
No, because you need to buy a license once either of the following become true:
- You need to test your code directly on a real device and not just an emulated device
- You are ready to publish an app to the app store
So what is the cost of MonoDroid? Depends on if you buy Professional, Enterprise, or Enterprise Priority. On the Xamarin store, the following table can be found. To see it you have to add MonoDroid to your cart and then click the “Show product comparison” link. [1]
Professional | Enterprise | Enterprise Priority | |
---|---|---|---|
Deploy to your devices | |||
Publish to app stores | |||
Enterprise distribution | |||
Priority support queue | |||
Guaranteed response time | |||
License expiration | Never | Never | Never |
Update subscription | 1 Year | 1 Year | 1 Year |
License usage | Original User | Seat | Seat |
Price (USD) | $399 | $999 | $2,499 |
These costs are very low for business or enterprise customers who have C# developers and want to write Android apps. The cost of training a C# developer to develop apps for Android in Java may be far greater than training them to develop apps for Android using C# and buying a MonoDroid license.
Is MonoDroid easy to set up?
Update
MonoDroid is not down to a one-click installer.
Here is the old method of Installing without the One-click Installer
MonoDroid is simple to set up. Xamarin has some simple steps that can be found on their web site. They have MonoDroid installation instructions for installing MonoDroid for use with any of three environments.
- Visual Studio (Important! Visual Studio Express is not supported)
- MonoDevelop on Windows
- MonoDevelop on Mac OSX
If you don’t have a Visual Studio license and you can’t afford one, then go with MonoDevelop because Visual Studio Express is noted to be enough [3].
However, the Visual Studio install is four simple steps.
- Install the Java SDK
- Install the Android SDK
- Configure your simulator
- Install the Mono for Android Visual Studio 2010 Plugin
These are very easy steps to complete, and I won’t repeat the steps here, but once you complete them, you are ready to start writing Android apps in C#.
Once you feel you have everything installed, click the following link to continue reading.
Writing your first MonoDroid project
http://android.xamarin.com/Installation/Windows