Our current project is a 2D platformer for Android (and possibly PC). We are using LibGDX and Box2dLights. LibGDX is an amazing game framework that you can use to target Windows, Mac, Linux, Android, iOS, BlackBerry and HTML5 with a single code base. It just makes your life so much easier in so may ways.
TexturePacker is our choice for making Texture Atlases. It works perfectly with LibGDX. You just draw some sprites, create a new project with TexturePacker, drag and drop sprites to the project, and click publish. Add the generated *.txt and *.png files to your game assets and you can load the TextureAtlas this easy:
TextureAtlas sprites = new TextureAtlas("game_sprites.txt");
Sprites are texture regions in the atlas, so you read them with findRegion:
TxtureRegion player = blockSprites.findRegion("player");
If you have made an animation consisting of multiple sprites, you should name them with a index postfix, like:
player_running_001.png player_running_002.png player_running_003.png player_running_004.png
In the game you can read the whole animation at once:
Animation playerRunningAnimation = new Animation(0.25f, sprites.findRegions("player_running"));
Easily worth the ~30€ right?