Bit late in the day to start this as I’ve been working with Xamarin Android for a good few weeks now but I still feel extremely inexperienced with this work at the moment. I’m still just working my way through getting to grips with just the tools let only all the pitfalls of the platform.
So I thought I’d start a page about this things I learn along the way that don’t seem to be covered or get mentioned in conversations but never really documented or grouped together. Please feel free to drop me a line of comment below of other things to include.
Don’t name your projects BlahDeBlah.Android
At some point in the future you will end up referencing a support package or library and you’ll end up with namespace and type conflicts or errors about missing resource IDs. Use something like Droid.
Don’t Use Windows 7
When I first started out I was on Windows 7 and thus ensued a battle of trying to get things to compile and work properly (ReSharper hated it). So many things in the mobile PCL world appear based around Profile259 and Windows 7 cannot install the Windows Phone 8 SDKs required to be fully compatible with this profile. Yes there are tricks you can perform but it will come back to bite you in the long run. Even with the trick in place my instance of ReSharper wasn’t at all happy.
Use a Good Framework (Like MvvmCross)
MvvmCross is simply brilliant. Has a steep learning curve as all good, flexible and mature frameworks do but it will help in the long run.
Yes this might sounds obvious but the smaller and more incremental your version control commits the less likely you are to run off down a path to a dead end and incur more work.