Question

I am going to create a mobile web application that will run on all web enabled mobile browsers. It will involve searching and booking of hotels and flights. We already have a desktop applocation developed in JavaEE, MySQL for the same.

What do you suggest I should use - PhoneGap or Titanium for this task?

What are the advantages and disadvantages to use each?

And what technologies should I know or learn to use each of these?

Was it helpful?

Solution

Phonegap

What is PhoneGap Trying To Accomplish?

The purpose of PhoneGap is to allow HTML-based web applications to be deployed and installed as native applications. PhoneGap web applications are wrapped in a native application shell, and can be installed via the native app stores for multiple platforms. Additionally, PhoneGap strives to provide a common native API set which is typically unavailable to web applications, such as basic camera access, device contacts, and sensors not already exposed in the browser.

To run a PhoneGap application on a native emulator/simulator, developers will generate a project for each of the native platforms they wish to support, configure that project’s “web root” directory in Xcode, Eclipse, or whatever native toolchain is needed, and then run the project using that tool.

Strengths of the PhoneGap Approach

Any native platform that supports a web view or web runtime can be a PhoneGap platform. Anyone who can write HTML, CSS, and even a small bit of JavaScript can wrap up a web page in a native app and distribute it as such. The barrier to entry in using PhoneGap to package web pages as native apps is extremely low.

Weaknesses of the PhoneGap Approach

The quality of the user interface in a PhoneGap application will vary based on the quality of the web view and rendering engine on the platform. The Webkit-based rendering engine on iOS is strong, and provides the best performance. The Android web view is functional, but has some notable limitations.

PhoneGap also cannot be extended with native user interface. The end developer’s application its self lives inside a web view, and user interface is rendered in HTML.

Titanium

What is Titanium Trying to Accomplish?

The goal of Titanium Mobile is to provide a high level, cross-platform JavaScript runtime and API for mobile development (today we support iOS, Android, and the browser, with BlackBerry 10 and Windows Phone coming soon and eventually, respectively). Titanium actually has more in common with MacRuby/Hot Cocoa, PHP, or node.js than it does with PhoneGap, Adobe AIR, Corona, or Rhomobile. Titanium is built on two assertions about mobile development:

  • There is a core of mobile development APIs which can be normalized across platforms. These areas should be targeted for code reuse.
  • There are platform-specific APIs, UI conventions, and features which developers should incorporate when developing for that platform. Platform-specific code should exist for these use cases to provide the best possible experience.

Strengths of the Titanium Approach

Get access to a wide array of native features and functionality out of the box, from user interface components to socket interfaces to notification system integration.

Weaknesses of the Titanium Approach

Titanium platform is only available on what have been deemed the most critical mobile platforms at present: iOS, Android, and the web.

Some user interface components do not yet perform as well as their native counterparts under some circumstances, such as very large table views with highly customized layouts.

Source Link : Comparing Titanium and PhoneGap

Hope this helps.

OTHER TIPS

Both Phonegap and Titanium are free for developing mobile application and to develop apps using Titanium, you should need basic knowledge in javascript since it is simple javascript combined with Titanium API while we can use most of web technologies like HTML, Javascript, CSS etc. It's purely depend on what type of application you want to create. More simply if you want to create simple app that does not contain graphs and drawings you can simply use Titanium but if your app contains graphs you should use Phonegap.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top