Google has created the Android operating system so that anyone and everyone with the right skills can create applications to run on an Android smartphone. Google’s approach to developing smartphones is completely opposite to Apple, who prefer control over the software that people can put on their iPhones. The open nature of Android means that you can literally develop whatever you want and people can download and install it and many developers have jumped ship from iPhone apps to developing for the Android because of the freedom it gives them.
If you develop an application for the iPhone then it is in the hands of a reviewer who determines if the app is good enough to be sold on iTunes or if it is appropriate for the app store – many apps have fallen foul of Apple’s censorship policies. On top of this, research firm, NDP Group have said that half of all smartphone sales are for the Android operating system and by the end of 2010 some 32 million handsets were running Android. No wonder then that everyone is investigating how to develop Android apps now.
Android apps are programmed in Java, so you need to know this language or hire a developer who does before you begin. The next step is to download the Android Software Development Kit (SDK) from Google. This contains libraries, classes, code examples and an interface to test your new Android application. You can also download the Google APIs Add-On extension which includes libraries specific to Google’s various web services.
You would generally design the interface in Illustrator and save the graphics in vector format, but it’s best to get a talented designer to do this. The libraries in the SDK also contain some standard vector graphics that you can use when developing an Android application. If your app creates data that needs to be saved and referenced (for example a weight loss tracker where you enter your weight and plot your weight loss on a graph over time) then you need to store the data in an SQLite database and create the necessary code to create the database, insert and retrieve data
Getting your finished app from your computer to your Android phone is a little bit complex because it needs to be converted, compiled and then deployed. Android uses a system called Dalvik Virtual Machine and it runs Dalvik Executable files. Your Java Class files need to be converted in to .dex files using a tool called DX, once this is done it needs to be packaged in to an .apk (Android Package) file by something called the Android Asset Packing Tool. Only when this is done can the application be deployed to an Android handset and executed.
Fortunately there are vast libraries of freely available code on the Android developers website and on 3rd party sites which provide tutorials on how to get started building your first Android app.