Android Development: Do You Know Your Options?

Nowadays everyone wants to be an Android developer. Android applications can be built in many programming languages. Some users are familiar with web programming (HTML5/CSS/JS/Ruby.. ) some others are very much familiar with software programming (Java) or Game or Flash programming(AS3) etc. Today I am going to introduce you about different platforms which you can use them to develop applications for an Android.

Java Programming

This is one of the familiar, and preferred, ways to develop for an Android using Java. The Android SDK includes its own emulator to run your applications. Eclipse IDE and ADT(Android Develelopment Tools) makes users interface designing and application description easier. It also reduces development and test time. If you are new to Java and would like to learn, then I suggest you to go with the Head First Java book, it’s an amazing book for beginners. Also make sure you check out the Android Developers YouTube channel for more workshops and tutorials on Android Development.

PhoneGap

PhoneGap is an open source, cross platform JavaScript framework where JavaScript developers can build native applications using HTML, CSS, and JavaScript. It is easier for web developers to build smartphone applications using this framework, that is if you have a potential to build HTML/CSS web pages then you won’t find this platform difficult. Supported platforms includes Android, iOS, Windows Phone7, Web OS, Symbian, and BADA. Adobe Dreamweaver 5.5 even supports PhoneGap! Check out PhoneGap YouTube channel for tutorials and plugin information.

Sencha Touch

Sencha Touch is a free JavaScript mobile framework which allows you to build appliaction for touch devices. Compatible with Android, iOS, and BlackBerry devices. So now what is the difference between PhoneGap and Sencha Touch? Which one to choose?
You can use Sencha Touch to create your smartphone user interface, and PhoneGap can be used to excel your application thats is to access GPS, compass, camera, accelerometer and others.

jQuery Mobile

JQuery Mobile is web user interface mobile development, where you can use it to create basic layout, navigations etc. jQuery Mobile is not separate from jQuery, it’s built on top of regular jQuery. This framework compatible with Android, iOS, BlackBerry, BADA, Windows Phone7, Web OS, Symbian, MeeGo. Check out ThemeRoller to create your own theme for jQuery Mobile.

RHOMobile

RHOMobile supports all Smartphones and is best suited for Ruby developers. RHOMobile follows Rails Frameworks. It is based on Model View Controller (MVC) architecture. It has an offline capabilities using Rhosync which includes sync capabilities. RHOMobile also supports latest Android 4.0 Ice Cream Sandwich iOS 5. You can also write and build applications online using a tool called RhoHub

Titanium Mobile

Titanium Mobile is another development platform by Appcelerator, write code once and deploy in multiple platforms. Titanium acts as a bridge between JavaScript and Java for Android similarly Objective-C for iPhone, those who are familiar with JavaScript can easily build applications using Titanium Mobile, which supports some 300 APIs.

Corona

Corona SDK is very powerful when creating complex games! It allows you to create cool games with simple lines of code. They have an inbuilt libraries using which you can get tons of code for physics engine which are required for game development. Corona SDK is a cross platform mobile development tool compatible with Android and iOS devices. It offers more than 500 APIs for you to tap into.

Adobe AIR

What is Adobe AIR?

“The Adobe AIR runtime enables developers to deploy standalone applications built with HTML, JavaScript, Action Script, Flex, Adobe Flash Professional, and Adobe Flash Builder across platforms and devices, including Android, BlackBerry, iOS devices, personal computers, and televisions.”

Adobe AIR appliactions are based on FLASH and HTML/JS technologies. Adobe AIR can access databases like SQLite and users devices which is helpful in building applications which can function without an internet connection.

Adobe Flex

” Flex is a powerful, open source application framework that allows you to easily build mobile applications for iOS, Android, and BlackBerry Tablet OS devices, as well as traditional applications for browser and desktop using the same programming model, tool, and codebase ”

Flex is a cross-platform tool to create Rich Internet Applications(RIAs). Flex is an Eclipse based IDE for devleoping applications. It can be used to build applications which run using Flash player or Adobe AIR. It enables server integration with PHP, JAVA, Ruby, .NET, SAP backend.

Unity3d

Unity3d is a game engine, allows creating stunning professional 3D games. It is one of the best game development tool for smartphones and gaming devices. It is Compatible with Android, iOS, Web OS, PS3, Xbox 360, Wii devices. Check out some amazing Unity3d game demos!.

Flixel

About Flixel

” Flixel is an open source game-making library that is completely free for personal or commercial use. Written entirely in Action Script 3.0 ”

AdamAtomic, creator of Flixel. It is a game engine it can be used to create flash games using Action Script 3.0.
Before starting you need to download Flixel library from Github. Check out some Demo games built using Flixel.

Now Finally, Hope, I have shared some top development platforms, hope this helps to some upcoming developers. Before choosing your platform, do a research on your development platform and make a note of its positive and negative points, choose the best one which is suitable for you. And build creative apps, good luck!

Win an Annual Membership to Learnable,

SitePoint's Learning Platform

  • Alberto Silva

    Why leave Mono for the Android out of the options?

  • http://www.aweb4u.co.nz Murray

    Another way to code on Android devices is with Basic4android, which lets you program in BASIC on an Android device : http://www.basic4ppc.com

  • Eric Malamisura

    I agree, Mono for Android is probably one of the better options than any of these mentioned! I have tried three of the ones mentioned and found all three rather lacking in tools, and overall functionality!

  • Max

    There is an exciting new kid on the block – Application Craft. You should look at the Phonegap case study :
    http://phonegap.com/case_study/phonegap-application-craft-pain-free-mobile-app-development/

    Suggest you add this to your list. It’s actually a lot more than a framework. It’s a complete IDE with UI and Code editing and incorporates both Phonegap and jQuerymobile. Bit like a cloud based Visual Basic for mobile and desktop apps.

    • http://gplus.to/rupesh Rupesh

      Added, Thanks :-)

  • http://haxe.org Bruno

    You seem to have missed the most agile environement :
    haXe.org and NME whitch is an haxe librarie that provide a crossplateform API very similar to AS3.
    to produce iOs, andriod, webOs… and more.

  • milli

    i want to build an android app using c/c++ for the ndk and java for the sdk.can l get help.its my project for the semester

    • http://gplus.to/rupesh Rupesh

      What kind of help do you want?

  • http://www.togosoft.com/TDB Eric

    Just completed my new program. Hope someone likes to take a look at it.

    Togosoft Device Browser allows web users to create Android programs in minutes. Without using Android SDK and knowing Android programming, this browser allows most web developers to access Android hardware, sensors, and services with the plain HTML and JavaScript codes.

    Here is the list of features supported by Togosoft Device Browser.

    * Accelerometer
    * Gyroscope
    * Compass
    * Camera
    * Barcode & QR code scanner
    * Vibrator
    * Geocode
    * Geolocation
    * Text-To-Speech
    * Locale
    * Phone service
    * SMS service
    * Email service
    * Map service

    Please refer to http://www.togosoft.com/TDB for more information.

    Thanks.

  • Scott Adams

    These days there are thousands of small app creation sdk’s appearing everywhere,
    it’s getting harder to keep track, quite frankly I don’t see many of these surviving against
    the other more well established system, like PhoneGap, Titanium and Mosync.
    There 3 quite strong SDK’s out there, I’d say the strongest contender is Mosync and thats not mentioned in this blog.

  • http://sites.google.com/site/xanecomxanem1 Xane M.

    There’s also MIT App Inventor (http://appinventor.mit.edu), which allows building an app for Android without code, just blocks.