Path of least resistance - Go Android
I have developed applications on the three of the most common platforms - iPhone, Android and BlackBerry. Did I hear someone say what about MS and Nokia? They are quite non existent as either the phones or good development support respectively are missing. And to me the effort is not worthwhile.
I will not write entire how to tutorials because there are plenty of them around, especially on the Android resources page.
I will share steps and small tips that I found useful while learning Android. Some of the things I had to do were not very well documented, especially while dealing with database.
If you are already a java programmer, then android development will be fun and easy - since the android API are quite powerful and very well designed. I usually work with Eclipse and the eclipse plugin for Android is wonderful and I will suggest it as a development environment for Android.
To setup the environment, you will need to download and install java and eclipse. Setting up java and Eclipse are not covered here, since it is fundamental to java development.
You will need the Android development tools (ADT) plugin for eclipse.
Next you will need to download and install the Android sdk form here.
Next you should at least familiarize yourself with basic architecture and constructs for an Android application. All of which are available here.
Especially important to know are concepts behind an Activity, recent introduction of Fragments, Intents and user interface design and development.
From my experience, it is quite normal not to understand many of these concepts in the first reading. But be fearless and develop your first “hello world” .
Once you have the hello world up and running, many concepts will become clear. Look at the generation of R.java and what it contains. Try to delete it and compile your code again.
I also find the Notepad application very useful to explain the concepts to people
After you get started, and have written a couple of simple programs, it is time to look at database interaction, which will be the next post.