Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I would like to ask the following regarding developing Tetris- and Angry Birds-like 2D games for Android:

  1. Is Java the official development language for Android?
  2. What free or commercial Android development environments (like Xcode is for iOS) are available?
  3. What open source game development engines, like cocos2D, are available for Android?
  4. Are there any great tutorials available for developing such games?
share|improve this question

closed as too broad by Josh Petrie May 9 at 16:17

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

Tetris and Angry Birds are quite different from each other. Seems strange to lump them together, as you may want to use different "tools" for each one. – Adam Harte Jul 6 '11 at 21:15
up vote 10 down vote accepted
  1. Java is the default language to develop on Android, although you can use NDK (native C) for performance issues on specific parts. But basically, Java + OpenGL is fast enough for most 2D games.

  2. One of the best (in my opinion) development environments for Java/Android is Eclipse : you can download plugins for Android from the official website.

  3. You have Andgine, a free 2D game engine :

  4. You'll find many tutorials for Andgine on their website. If you're missing something, maybe ask for a specific topic here or on their forum.

share|improve this answer
Thanks. I will look into those and start developing. So is the simulation tools for mobile also available? Where can i get them – footy Jul 5 '11 at 12:34
The android SDK comes with a Virtual Device (which is an Android Simulator inside your PC to test your application). Although for a game I would suggest testing on a real phone via USB to have real performances (OpenGL is quite slow on the emulator) – XGouchet Jul 5 '11 at 13:52
I added the link into your answer. – The Communist Duck Jul 5 '11 at 16:45
On the other hand, Eclipse is by many people considered an awful software. I prefer to use a non-IDE editor and compiling command-line. – o0'. Oct 11 '11 at 9:19
  1. The Android developer site doesn't make it clear anymore that the SDK uses the Java language, but that's the official language. Compiled languages can be used through the Native Development Kit, allowing for languages like C or C++ to be used; however, this is for augmenting Java code rather than replacing it.
  2. The supported IDE is Eclipse, and Google provides a plugin to help automate the creation, testing, and deployment of Android apps.
  3. There's a relatively new 2D game engine called andEngine which is LGPL licensed. There is also an Android port of the cocos2D engine you mentioned, which is New BSD licensed. Box2D is also available for Android, and is the physics engine used by Angry Birds and many physics-based 2D games.
  4. There are examples and tutorials available for andEngine, and more are being created all the time. For cocos2D you could adapt any of the many tutorials for iOS development; or find some specific to cocos2D-android. There's an example Android Tetris game you can use for reference and a Java Tetris tutorial you could use for guidance.
share|improve this answer

As far as engines are concerned, check out the Corona SDK . It's really easy to use (Lua) and there are a lot of great resources and tutorials available. It isn't free, though; there is a yearly subscription, but it's well worth the price.

share|improve this answer
You linked to DIY StackExchange, not Corona SDK. Was that intentional? – Keeblebrox Jul 6 '11 at 18:03
Sorry about that, fixed. – Edgar Miranda Jul 6 '11 at 18:52

I am developing an OpenGL application on android, and found that LibGDX is the way to go.

It has very high performance and runs on multiple platforms very easily (Windows, OSX, Linux, Android...). It was a steep learning curve for me as this is my first game and my first open gl application combined, and I truly suck at math - but its working and it looks good!

I develop and debug using Eclipse on my windows box and occasionally test the game on my android phone (A Rezound) just to make sure I haven't broken anything on android.

Doing the development and debugging natively on windows via LibGDX is awesome as it is fast and hassle free.

Doing debugging on the phone was getting old really quick as it was slow to load and install.

Good Luck

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.