Develop Android app using C#
C#AndroidMonoC# Problem Overview
Is it possible to write an android app using C#? Is there an API or something? Is it free for personal and commercial development?
What do I need to install to have android project template in my Visual Studio?
C# Solutions
Solution 1 - C#
Having used Mono, I would NOT recommend it. The Mono runtime is bundled with your app, so your apk ends up being bloated at more than 6MB. A better programming solution for C# would be dot42. Both Mono and dot42 are licensed products.
Personally, I would recommend using Java with the IntelliJ IDEA dev environment. I say this for 3 reasons:
- There is so much Java code out there for Android already; do yourself a favour and don't re-invent the wheel.
- IDEA is similar enough to Visual Studio as to be a cinch to learn; it is made by JetBrains and the intelli-sense is better than VS.
- IDEA is free.
I have been a C# programmer for 12 years and started developing for Android with C# but ended up jumping ship and going the Java route. The languages are so similar you really won't notice much of a learning curve.
P.S. If you want to use LINQ, serialization and other handy features that are native to C# then you just need to look for the equivalent java library.
Solution 2 - C#
You could use Mono for Android
:
http://xamarin.com/monoforandroid
An alternative is dot42
:
dot42 provides a free community licence as well as a professional licence for $399.
Solution 3 - C#
Here is a new one (Note: in Tech Preview stage): http://www.dot42.com
It is basically a Visual Studio add-in that lets you compile your C# code directly to DEX code. This means there is no run-time requirement such as Mono.
Disclosure: I work for this company
UPDATE: all sources are now on https://github.com/dot42
Solution 4 - C#
Mono Touch is the answer.
Solution 5 - C#
I have used the Unity 3D game engine for developing games for the PC and mobile phone. We use C# in this development.
Solution 6 - C#
You should try something running Mono (its compatible with .NET).
For game development, I recommend unity: http://unity3d.com/
for general aplications: http://xamarin.com/monoforandroid
Solution 7 - C#
There are indeed C# compilers for Android available. Even though I prefer developing Android Apps in Java, I can recommend MonoForAndroid. You find more information on http://xamarin.com/monoforandroid