The news broke today that Android devices now account for 50% of the global smart phone market, making it the world's most popular mobile platform. When Android was introduced in 2007 it was a distant 5th in mobile platforms - trailing Apple's iOS, Blackberry (RIM), Windows Mobile and Symbian. With millions of Android devices in use, and an incredible 500,000+ new Android devices activated daily, the popularity of Android applications is increasing exponentially - and with it the demand for Android application developers is soaring. IT recruiters are reporting unprecedented demand for talented programmers with Android development training.
As with all great opportunities, learning Android application development isn't easy. For the non-programmer there are several steps in the process, and even experienced programmers have quite a bit to learn when adopting Android. If you're interested in developing new and innovative applications for the world’s #1 mobile platform - here are my six steps to becoming an Android application developer.
Android development can be done on a PC, Mac or even a Linux machine. More good news: all the tools you need to develop Android applications are free. First, download and install the latest version of Java SE from the Oracle website. Next, grab the Android SDK (Software Development Kit) from the Android Developers site. The SDK includes the Android code libraries, Android's emulator, and some useful command line tools for Android development.
Eclipse is the mobile development environment of choice for Android developers, because it integrates best with the Android SDK, and it's free. Download the Eclipse IDE for Java Developers from the Eclipse website (choose the version that matches your OS). Eclipse is a powerful text editor that offers a range of features mobile developers depend on, including syntax highlighting, API documentation and package organization. Finally, go back to the Android Developers site for the ADT (Android Development Tools) plugin. Using ADT with Eclipse makes creating Android applications much easier with features like the UI (user interface) editor and the Android-specific debugger.
Most Android applications are written in Java (some are written in C++). A strong command of Java is essential for Android application development. Android utilizes Java’s object oriented programming model. In object-oriented programming, elements of the program are broken into pieces that mimic “real-world” objects. For example, in an Android video game, the player character and enemy combatant would each be objects.
If you’re looking for a comprehensive online training program to go from beginner to skilled Android (and iOS) Developer, check out the Mobile Development Bachelor's Program from Full Sail University. It covers the business, marketing and programming aspects of professional mobile app development, you can break it down to take just the modules you need, and it's accredited so state and federal financial aid is available.
Even if you’ve written desktop or web applications before, it’s critical to understand that writing apps for mobile devices is a completely different experience. With a desktop application, the operating system manages other applications and their priorities. In Android, it's up to you to code your application to handle external events. For example, what does your application do if the phone rings in the middle of a resource-consuming animation? How does your application react to the receipt of a text message? Understanding the Android application lifecycle will enable you to create applications that “play nice with others,” thus providing users with the best possible experience.
While Android applications are written in the Java programming language, the Android API (application programming interface) adds entirely new packages to the command-set. The Android packages (groups of classes) allow you to write code that controls everything from the on-board camera and the audio recording feature, to Bluetooth functionality and Wi-Fi access, and much more. Once you have a strong command of these packages, you will be able to implement the hardware and features of Android devices in your mobile applications.
Writing your first complete Android App can seem daunting, but the process will be easier and more pleasurable if you choose a topic that you enjoy. Write your application in multiple iterations, starting with the basic features and expanding its capabilities with each pass. Debug and test carefully along the way to ensure that your application works in all situations. Testing should be conducted on an actual Android device as well as in the emulator.
Android Applications can be distributed through the official Android Market, your own website, or through a 3rd party site, such as the Amazon.com Appstore for Android. To distribute your application through the official Android Market you must register as an official Android developer, which at the time of this writing is a one-time fee of $25. Unlike Apple's App Store, Google’s standards for application acceptance are fairly lax.
Android Development is a challenging form of programming. However, the personal and financial rewards can be great. Keep in mind that the career of a programmer involves a lifetime of learning, and that learning Android application development is just part of that lifelong journey. Have fun and good luck!