So You Want To Be An Android Developer?
Mobile application development has taken off; in three years, 300,000 mobile apps have been developed with 10.9 billion downloads. Although Android is no longer dominating the mobile OS market, it's still beating iOS (for now?). Because it's such an expanding market, the number of developers is rising as well which has it's positives and negatives. An increase in developers brings a larger application selection, and a diverse marketplace selection for Android users but the downside is there are more inexperienced developers releasing applications into the marketplace. As if you need another reason to develop Android applications, the only cost incurred by a developer is the fee to publish apps on the Android Market, now Google Play. Although there are other markets to distribute your application, Google Play has one of the lowest developer fees ($25 as of the publication of this article) and it is installed on almost all Android devices. This article will make sure you start your Andriod Development Quest on the right foot.
You Know Java(ish)-
1. YAY! You're already on the right track. To get started, download and install the Android SDK. If you're using Windows, then use Eclipse for development; it comes with tools to make it easier for noice developers.
2. Get to know the Android Developer Website (ADW). The Home Tab is self-explanitory, the Dev Guide contains a plethora of articles about various Android topics. The Reference Tab allows you to explore the Android APIs and the last tab of interest, the Resources Tab contains Android articles, sample code and tutorials.
Some Common Development Abbreviations:
ADT-Android Development Tools: Eclipse plugin featuring a bunch of tools to aid in Android development.
API-Application Programming Interface: Method to interface with specific software components.
AVD-Android Virtual Device: Allows you to emulate an actual Android device.
IDE-Integrated Development Environment: Software for software/application development, ex: Eclipse.
SDK-Software Development Kit: Set of tools that allows to to develop for specific Android releases.
3. Complete more than one tutorial from the ADW. Start with the "Hello World" tutorial and that's it! You are now an android developer! Not really, I just thought I'd tear off that band-aid now. Take the time to complete one more tutorial at the very least.
4. Get to know Eclipse. You're probably going to be spending a lot of time using it so you might as well get to know it now. There's a super detailed but long tutorial over at Smashing Magizine and you can find all of the keyboard shortcuts here, although I use Ctrl+Shift+O the most (to orgainize imports).
5. Now that you know the very basics and are somewhat familiarized with Eclipse, dive a little deeper. Complete some advanced tutorials either from the ADW or from another source; website, book or tutor. Vogella has a great, extensive set of tutorials and mobile tuts+ has lots of tutorials for beginners but more advanced ones are only for paid website members.
6. Get an account over at StackOverflow. If you get a question, or don't know how to do something; scour the ADW, search StackOverflow and then search Google. There are websites and blogs all over explaining any Android development question you may have.
7. Get a brilliant idea. If only it were that easy. Once you have an idea for an app, check Google Play to see if your app or a similar one already exists-remember to use a variety of terms to search for the app you desire. If there isn't already a similar app on the market, or if you decide to make one anyway next you need to determine whether or not your application fills a gap in the market.
8. Once you determine what you want your app to do, search for an API that allows you to easily allows you to get the functionality you desire. Some examples are JavaMail and Jtwitter for sending email or working with twitter from your app. To add these libraries to your app in Eclipse, right click your project, click on properties and then Java Build Path. Navigate to Libraries, then Add Jar and find the Jar for the library you want to add.
9. Make your app B-E-A-UTIFUL! There's now an Android Design site which contains all the specifications necessary to make your app look amazing. Just having a good idea doesn't mean anything if you dont have a great User-Interface to go along with it.
10. Keep up with your Java and Android skills and continue your educaion. Android keeps growing and changing so keep broadening your knowledge so you can make better applications.
You Take Your Java With Two Creams And A Sugar-
If you prefer C/C++ you can always develop with the Android Native Development Tools. But if you don't know a programming language you still have two options; you can search for websites that will let you develop an application or App Inventor. App Inventor lets you easily build an Android application by connecting puzzle pieces you can construct a mildly complex application. Although App Inventor is super easy and only requires some programming logic, you can't upload your projects directly to Google Play. Well, actually there is a fairly easy workaround but itn't endorsed by MIT (the ones who run App Inventor) but it gets the job done. If you don't want to lean a programming language or touble yourself with a feature-limited alternative, you could just talk to someone you know who is an Android Developer. Having part of an application that you can make monetize is infinetly better than having all of an application that doesn't exist.