How to Develop Android Apps

Developing apps and games for Android powered smartphones can be big business if you can come up with a concept that is both innovative and simple to use. Coming up with an idea is one thing but in order to implement it you are going to need to have some technical knowledge and an understanding of how all the components of your app will fit together.

There are two ways in which you can develop your app or game.  The easiest way is to sign up for Google’s App Inventor service. This allows you to develop your apps online in a drag and drop environment. Within minutes you can build a basic app that contains user interaction, images and sound.  With App Inventor, you specify the exact behavior behind each button click and gesture but this is constrained to the methods that are built into to App Inventor GUI.

App Inventor contains most of the functionality you would ever need to build Android apps. Maps, GPS and the accelerometer controls provide a great starting point for experimenting with your app.  Whilst you can use the Android emulator, this would not be useful for testing out an app which uses the accelerometer as you would need to physically move your device for this.

The biggest issue with App Inventor is that  currently you are not able to publish your apps to the Android Market, only to the phone you have connected to your PC when you create the app. If you have an excellent idea for an app and want to share it with the world then you are going to have to develop it in a different environment.

The common way that commercial apps are developed for the Android Market is via the Android SDK (software development kit) which is available to download from the Android website.  You will also need to download a third party development environment which will be where you write your code. The most common environment for Android programming is called Eclipse which, again is a free download.  In order to develop your apps using this method, you will need to have considerably more programming experience than you would using the App Inventor method.  You will need to have an understanding of Java and know what classes are and how they work.  If you tick both of these boxes then you are well on your way to creating your app.  With the SDK and Eclipse, you can control the Android version that you are targeting. For example, if you want to make use of all the latest features, you would target your app specifically at Android 2.2 whereas if it was a simpler app, you could target it at Android 1.6 and above, giving you a wider audience. Again, you can use the Android emulator to test your app or you can use an actual device which is connected to your PC.

Once your app is at an acceptable level you can compile it so that it is in a format that can be uploaded to the Android Market and be deployed. With App Inventor, you never get to see the source code which is a shame otherwise you could copy and paste it into Eclipse and deploy your app this way.

To summarize, if you want to create an Android app or game for your own use only, App Inventor provides a quick and easy way of accomplishing this task.  If you want to develop an app with the intention of publishing it on the Android Market, you will need to use the Android SDK and a development environment like Eclipse in order to publish your app.