Get Started with Hybrid Application Frameworks

This wiki page will give an overview of what hybrid applications are, what tools and frameworks are out there to help create them, and some teasers for upcoming examples if you wanted to get involved.

What is a Hybrid Application

The term "hybrid mobile application" can be a bit confusing for new developers  A hybrid app, are native mobile applications that are built using technologies other than the native SDK's for the platforms.  Most of them claim "write once run anywhere", however the true is more like "write almost once, and run almost anywhere".  As with most things there are different degrees of compatibility and tinkering that is required. 

app_types.png

 

Hybrid application projects are usually involve web based technologies such as JavaScript, HTML, etc...  There are a number of frameworks out there that assist with this.  They typically involve some sort of wrapper and/or compiling phase to turn your common code into these native applications.  All of these frameworks also provide different degrees of access to the native device's functionality.  Once these applications are built they can be deployed just like any other native application - i.e. through appstores, or direct links depending on the device.

 

The leading frameworks in this area are detailed below with links to examples, and future plans (jira's).  If you want to get involved jump right in!

Apache Cordova

Project link: http://incubator.apache.org/projects/callback.html

 

Originally known as PhoneGap, the code base was donated to Apache as the Callback project, which has now renamed itself to Apache Cordova.  This is one of the most popular hybrid frameworks around.  It uses a native wrapper approach and is developed primarily with direct web technologies.  It also provides a JavaScript bridge into native functionality in the form of plugins.

 

Examples, tasks, and plans:

  • Apache Cordova version of our kitchen-sink example - AEROGEAR-15
  • Walkthrough of using Cordova based apps on JBoss - AEROGEAR-35

PhoneGap Build

Link: https://build.phonegap.com/

 

A very neat tool developed by the Cordova team when they were known as PhoneGap is the PhoneGap build system.  One of the biggest pains for hybrid and cross device development in general is compiling and building the actual applications for each device.  The PhoneGap build tool lets you upload your web based application, and it will generate all of the device specific apps for you!

 

Examples, tasks, and plans:

  • Integrate our example above with PhoneGap Build - AEROGEAR-105
  • Develop a workflow for CI integration in OpenShift, JBoss AS, and PhoneGap build - AEROGEAR-106
  • Tutorial of how to do all of this in your own environment - AEROGEAR-107

Appcelerator

------------

Link to them - history and approach

 

 

Links to openshift integrations

 

 

Jira to create an Appcelerator version of the advanced example

 

 

RhoMobile

---------

Links to RhoMobile

Link to them - history and approach

 

 

Jira to create a Torquebox, rhomobile hybrid example

- for the pure ruby developer

 

 

 

 

Others

------

 

 

Sencha

Link to them - history and approach

 

 

AppMobi

Link to them - history and approach