Xamarin for Android
Cost: Free for individuals, OpenSource projects and Companies with 5 or less workers.
Language: C#
Code on: Windows, Mac
Requirements: Android SDK, Visual Studio (Windows).
How it works: It creates a wrapper around native components so you have access to all android API, you can use the powerful c# language directly over the components and create very concise code. LINQ, generics, Lambda, delegates are all available.
Pros. If you are used to use VisualStudio and c#, this is the best way to go. C# is one of the most versatile and advanced languages out there.
Cons. Using 3rd party libraries not made in Xamarin can be overwhelming, C# imposes a high barrier to novices, support is not quite good, a real good knowledge of the Java Android API is required in order to translate from Java to C#.
Personal Opinion
I have used, yes
It is a very good tool, know that is free, I guess I will use it more if I get more enterprise apps requirements, where the UI can remain most on the basic Android with some mods. Basically it is like using Java API but without a most curated language, (c# is more advanced IMHO)
Will I use it again: yes, but on a requirement basis.