First, be sure that you know Java. Even if I have been programing in PHP, ActionScript, JavaScript, Jquery, .Net, etc, Java is kind of different. To start making 2D games, make sure you know basics of Java programming. Try creating basic game in Java to practice some skills
To start coding for Android, you need 3 applications installed
- Android SDK - http://developer.android.com/sdk/index.html#download
- JDK 6 - http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Eclipse IDE for Java EE Developers - http://www.eclipse.org/downloads/
When Eclipse is launched, go to 'Help > Install New Software' to install Android Development Tools (ADT) plug-in. This extension supports the creation and debugging of Android applications
Next step is to create an Android Virtual Device (AVD) to be used for testing your Android
applications. An AVD is an emulator instance that enables you to model an actual device
To create AVD, go to 'Window > AVD Manager'
You can also use Unity (game engine) to create Android games
http://www.unity3d.com/
With all the tools & SDK installed, you can start Android programming at below mentioned sites
Android Training site - http://developer.android.com/training/index.html
Android Game Development Tutorial - http://www.kilobolt.com/game-development-tutorial.html
Udemy free course - https://www.udemy.com/learn-android-programming-from-scratch-beta/
Beginning Android Game Programming - http://mobile.dzone.com/articles/beginning-android-game
YouTube playlist - Android Game Development by TheLazyTryhard
https://www.youtube.com/playlist?list=PLvnXjBkwUhDHHUDTkV42GscJHf3BplZtN
"Beginning Android Games" is great book to learn fundamentals of game development for Android smartphones and tablets. Must have for new Android game developers!
http://www.amazon.com/Beginning-Android-Games-Mario-Zechner/dp/1430246774/ref=sr_1_1_title_0_main?s=books&tag=basebal-20&ie=UTF8&qid=1398951519&sr=1-1