If you are a C# developer and you want to develop for the mobile space the obvious platform for you would be Windows Phone. But then there is this pesky fact that iOS and Android still seem to have a large part of the market share. Thanks to Xamarin we can now easily develop C# applications for all major mobile platforms i.e. Android, iOS and Windows Phone. Plus if your target is Android you will not even have to leave your Windows Computer.
The development environment
To get started simply download and install the Framework and Extensions from the Xamarin website. You can choose to develop in Visual Studio or with the Xamarin IDE Xamarin Studio. Please refer to the licensing page to check out which plan you want to choose. For a simple try out you can either choose to start a trial to develop in Visual Studio or use Xamarin Studio from the get go.
Creating a project for Android is easy, just start a new Solution and/or add a Xamarin for Android project. You can now create Android apps the same way you would with Java.
Having a great emulator experience
If you are not going to develop on a physical device you will want to use an Emulator. Physical devices in general are great to know how the app feels on the hardware itself which is generally not as powerful as your development machine. Emulators give you a great chance to see how your app scales on different devices, Versions of Android and also mean do not need a physical device for development. Though for testing your app for the store I would generally recommend using a real device for performance testing.
My Emulator of choice is Genymotion which isn’t the standard emulator but you can install the free version and I can only recommend it after using it for a while.
Genymotion runs on VirtualBox which means you will probably have issues installing it on Windows 8.x. The issue is Hyper-V which is running per default. You can leave Hyper-V installed and use Virtual Box by following this neat How-To by Scott Hanselman.
Getting the most out of your emulator
Though Genymotion was a lot better than the default Emulator it still felt rather lagy. But worry no longer you can get a speedy emulator experience. Simply install the Hardware Accelerated Execution Manager, or HAXM for short, from Intel® and you will get the smooth emulator experience you would expect. Again Hyper-V may prevent you from installing HAXM so make sure you followed the tutorial from Scott Hanselman described above.
So now you’re all set to crank out those great Android apps.