Jitesh, A good friend of mine, has asked me a question a while ago: In what order should I learn Android? When do I know I know Android?
As if that is not an incentive enough, the ever enterprising Paul Bittutsky from Stanton prep borrowed my book to learn Android. Now I am compelled to give a road map.
This is a feeble attempt in answering that question. You can use this as a roadmap or a guidepost for your learning of android.
If you have suggestions do send them to me and I will update this document!
Introductory Track - Start Here
Install Java Install Eclipse Install ADT Create Hello World Compile it Create an ADT Run the app in ADT sign the app email the app Run it on a device
Although someone can teach you this, you can slog it out from online directions. It is a bit involved and give 50 to 100 hours to do this. On other hand if someone teaches you in person this is really effective.
Introductory Track - Anatomy of an App where you will know
Structure of the apk Manifest file Layout file activity controls logic resources logging debugging
This is best accomplished by writing a very simple single page app like a calculator and exercising each of these topics.
Essential Track - UI
Essential Controls - Text, Button, etc. List Views Scroll view ..More controls Layouts Styles Menus and Action bar Basic dialogs Field Validation Dealing with configuration changes Fragments Fragbment Dialogs Drag and Drop Animation
Essential Track - Persistence
Preferences Internal files external files JSON SQL Basic Content Providers Cloud storage
Essential Track - Services
Simple services Handlers Async task Progress dialogs rest/http services
Middle of the road - Strengthening Track
Broadcast Receivers Alarm Manager Notification Managers Process model Long running services Media: capturing/playing audio/video Loaders Text to speech Sensors Multitouch Gestures Incorporating Search Putting the app up in the market Programming for multiple devices Enabling for ads
Simple Widgets List Widgets Content Providers Compatibility Live folders Google Cloud Component and Process model Telephony/SMS Maps Advanced debugging for memory/battery usage Custom views Custom controls Custom Layouts A catalog of Killer custom controls
Android Studio Testing tools like Monkey runner, Robotium Other emulators: Genymotion Cloud storage Push notifications OpenGL Game libraries Game Tools like Unity Thirdy party libraries third party components webkit Jquery Mobile Phone gap Enterprise security etc..