What are different ways to develop application in android?
Can anybody tell me how many ways are available to develop applications for the Android platform. The only one way that I know is through Java. I read somewhere that other than Java; Python, Rails and Native C can also be used to develop Android applications. Please help me if anybody knows it, in terms of how these languages are used to create an application with any tutorials, documents or books.
There are probably currently 10 different ways.
There is jPython, jRuby. I recommend neither yet. It will take time for either of these to become mature on Android.
There is the NDK and JNI to communicate with Java threads. Not recommended unless you already have an existing C app you want to port to it. Not really recommended for C++. The NDK only contains a small subset of C++ headers.
There is Titanium Mobile Accelerator. You develop that in Javascript, and it compiles to native code for either the iPhone or Android (thought, since Apple made that recent announcement, it's probably not good for the iPhone unless Apple gives it its explicit permission).
There is Phone Gap. Not as nice as Titanium Accelerator. Javascript that runs on a Javascript Web Runtime (Phone Gap has been cleared by Apple recently)
There is VMxml (I think). You develop in Java, and will cross-compile to Objective C or other kinds of Java (including Android and xml).
There is Flex/Flash (I think). After all, Android should be able to play Flash. Right?
There is Lua, for $99, with the Corona SDK.
There is Rhomobile and the Rhodes framework, which uses Ruby and Rails-like structure, to generate native Android code. I used to be a big fan of that one. Not so much now.
Does that make 10? And there are few more that I just forgot about. If you want to start with something simple. Start with native Android, basically Java and xml (there are plenty of tutorials everywhere), it's not as complicated as it seems. If you really find that idea bad, then try Titanium Accelerator Mobile (this one has plenty of demo code in the package you download from them, plus you can find plenty of tutorials as well by just googling for them).
See this question for Python development.
See android-ruby project (for Ruby and not Rails development).
For native development you need the NDK.
The given list is not complete, but added all important ones
上一篇: Android上的Pygame