dot42 brings Android development to .NET and freedom to developers
UPDATE Shortly after I created this post, Xamarin announced their release of Xamarin 2.0 which resolves all of the issues that I've mentioned in this blog. I'm currently working to write a full review of the Xamarin 2.0 product, so subscribe to my RSS feed and check back soon.
dot42 is still a very interesting choice because the product doesn't require an additional runtime to execute. With the new release of Xamarin 2.0, I suggest you try both products and see which works best for you. I'd love to hear about your experience with either products. So please leave a comment about your experiences with each, and the apps that you wrote while trying the products.
Hello and welcome to another refactorthis.net article. As always, I'm here to bring you another article to benefit you in your .NET development endevours. Today's post is a detailed follow up to a previous post called dot42: an alternative to MonoDroid . So pull up a chair, loosen your belt, and get ready for a delicious plate of .NET development with a side of Android!
What's so special about dot42?
I'm glad you asked! dot42 is a development tool that allows you to use the .NET framework along with native Android APIs to develop Android applications.
Now wait a minute.. There's already a product that does that.. What's it called? hmm.. Oh yeah! MonoDroid by Xamarin.. And it's made by the guys that created the mono project! What do you have that they don't?
It's true that Xamarin has pioneered a great product in MonoDroid. There are a couple of problems as I see it when it comes to MonoDroid by Xamarin which I've already discussed in my other blog post about dot42 which I'll reiterate for you here because that's the kind of guy that I am. (Note that with Xamarin 2.0, these issues no longer exist. So try each of these great products and chose the best tool for you.)
MonoDroid by Xamarin offers a free evaluation version of their product, and that's great. There is nothing wrong with this practice. In fact it's quite common. The problem lies in the fact that they restrict the evaluation copy of their product by not allowing developers to deploy their test applications to their devices. This forces the developer to use the Android emulator if they wish to try MonoDroid for free. This, unfortunately, is a show stopper for me (and many others based on the feedback that I've encountered on the Xamarin support forums). The Android emulator is simply not a viable option for developing and debugging an application as far as I'm concerned. The internet is full of cries for help from frustrated developers much like myself, complaining about the horrific performance experienced when using the Android emulator, and that's when the thing even works at all! No thank you, I need a plan b!
dot42 to the rescue!
Not only does dot42 offer a free community license of their product, they do so without the restrictions that are enforced by Xamarin's MonoDroid. Even better, you can actually use their free community license to deploy to your phone, and even the google play app store! That's correct, I didn't stutter.. well.. wait.. (can you stutter on a keyboard?) anyway, they allow you to publish your Android applications to the google play app store as long as your application is free of charge. Restrictions? not an issue with dot42. Do you need any more reason to give this product a shot? Well just in case you aren't convinced, consider this. With Xamarin's MonoDroid, you are automatically at a performance disadvantage when compared to native Java Android development due to the mono run time overhead that occurs when executing a MonoDroid application on the device. Well guess what, you can rest easy in knowing that when using dot42 for Android development, your c# code compiles to Dex (dalvik executable code) just like when using Java and Eclipse to create your Android mobile applications (Thanks to Jan and Frank for reminding me of this so it didn't go unmentioned).
OK, what if I want to monetize my Android application in the google play app market?
dot42 also offers a professional license that allows you to develop Android applications using C# for commercial use. Of course if you are going to make money off of the dot42 Android development platform, it's only right that you pay for this license. But don't fret! The professional license that dot42 offers Android developers is modestly priced at just $399!
At the end of the day
If you are a .NET developer and you'd like to learn to develop Android applications utilizing your .NET development skills, I think that it makes perfect sense to give dot42 AND Xamarin 2.0 a try. I mean.. for the price of.. well.. nothing, coupled with the freedom of deployment options with their free community license, what do you have to lose? So what are you waiting for? Visit http://www.dot42.com to get started. as well as http://blog.xamarin.com/announcing-xamarin-2.0/
Well, that about does it for this article. I hope you had as much fun as I did. I'd love to hear about your experience with dot42, MonoDroid, or even using Java and Eclipse (ummm I'm going to stop myself here. Maybe another post :) ) for Android development. Please feel free to speak your mind by leaving a comment or drop me a line @ buddy at refactorthis dot net . You can also reach me on twitter @budbjames .
Thanks for reading!