When developing for the Android, there are a myriad of options to choose from when picking an IDE. There is a lot of overlap between what each environment does and who the environment is targeting. Let’s examine a few of the popular environments today and see why you might pick one over the other.
One of the earliest, IDE’s, Eclipse is one of those development tools that tries to be all things to all languages. It is a popular tool for developing Android applications, mainly because it is free. Those who are used to the idiosyncracies of the tool, swear by it and it does get the job done. Eclipse requires that you install the Android plugin (ADT) in order to start developing for Android.
JetBrains, the maker of intelliJ, are constantly pushing the envelope of what an IDE can do. IntelliJ started out as a Java development environment, and now has full support of Android through an Android plugin. IntelliJ has some amazing productivity and refactoring tools that help increase your coding by an order of magnitude. In many ways, IntelliJ seems to code itself with short cut keys and indictators that make suggestions on exactly what you should code next as you are typing. IntelliJ also has a nice layout editor for the Android. The downside of IntelliJ is that it is not free. A new user license is $500, but there are significant discounts for start-ups and students.
Android Studio, developed by Google themselves, is a fairly new IDE which is completely dedicated to Android development. It has a very similar feel to IntelliJ (as it was developed in cooperation with JetBrains), with many of the autocomplete and intellisense features supported by the Intelli IDE. As of this writing, Android Studio is available as an early access preview, but even in early access, the IDE looks highly promising as a dominant development environment for Android. There are a lot of features that make Android Studio attractive, like a rich layout editor, and shortcut features for specific Android development, such as automatic updates in the manifest and layout files. Another nice thing about Android Studio is it is free.
For those developers who prefer the Microsoft, C# and .NET route over Java, there is a path for you in Android development. Xamarin, a Microsoft Partner, has developed both Android plugins for Visual Studio and their own IDE called Xamarin Studio. Xamarin allows you to develop for both major mobile platforms, Android and IOS using C# and .NET. The Xamarin community is very supportive and helps you get started in using their unique environment. Xamarin originally started as a group of developers that worked on the Mono project, a .NET cross-platform solution. It has now expanded into a full blown mobile development solution. The downside of the Xamarin platform is that a business license is $1000/yr. Indie developers can buy Xamarin for as little as $299/year.
For 2D and 3D graphics game development, I’m not sure anything beats Unity. This IDE is 3D Studio, a Physics Engine, Game Engine, and multiple platform support all in one package. As with any graphical development environment there is a learning curve. Unity3D differs from the other IDE’s in that, when creating a game, you are attaching scripts to objects in your game to program their behavior. Unity supports about 10 different platforms. Unity costs about $1500 for an Android Professional license or $75/month subscription. You can download and learn Unity for free, though, and later purchase the Android license when you are ready to put your game on the Android device.