StackTips
 13 minutes

What is Phonegap Cordova

By Editorial @stacktips, On Sep 17, 2023 Cordova 2.33K Views

This section of the tutorial will help you understand “what is phonegap cordova”

1. About PhoneGap

PhoneGap is an open source development framework for building cross platform mobile apps. It is a wrapper used for native packaging of mobile web application. It is developed by Nitobi, a company based in Vancouver, Canada. Nitobi was acquired by Adobe Corporation on the year of 2011. After the acquisition Adobe released PhoneGap technology as open source under the name Apache Cordova.

2. What is PhoneGap Cordova

Mobile market is huge with bunch of opportunities. At the same time it is really painful experience for the developers to make an application reach to the wider audience. There are multiple platforms like android, iPhone, Blackberry, windows comes with lot different capabilities. Every platform uses different programming language syntax and different distribution process. As the programming platforms are different, developing an application requires putting the separate development effort for different platforms.

Below table explains the languages, tools and application formats accepted by different app stores for different mobile platforms.

iOSAndroidBlackberryWindows
LanguageObjective CJavaJavaC#, .NET.
ToolsXcodeAndroid SDKBlackberry SDKWindows Dev. Tools
Packaging format.app.apk.cod.xap
App StoresAppleAndroid MarketBlackberry app WorldWindows

Below are the challenges today to maintain the application for different platforms

  • Development tools and programming languages are different for different platforms, which require developers with different skillsets.
  • Developing the application for different platforms is cost effective
  • As development is different for different platforms, we will have different source code as a result code base gets messy and becomes difficult for maintenance and support
  • Time to market increases as need parallel development and bigger team need

3. Revolution of Cross Platform Application development

Due to the above challenges, there’s revolution of cross platform mobile application development. Cross platform approach or in another word web approach. In this approach, the application development will be using HTML, CSS, and JavaScript technologies. HTML and Java Script is platform independent as it runs on browser. The below table displays the basic different between

Native AppMobile Web  App
  • Designed to run on device operating system and machine firmware
  • It can run offline as standalone app
  • It typically need to be adapted/adjusted for different device
  • Developed using the platform native SDK or programming languages.
  • Writing differently for different platforms
  • All or some part of the software downloaded from web each time it runs
  • It is usually accessible form all mobile platforms
  • It runs on browser
  • Developed using HTML, JavaScript, CSS, and SASS. Same code can run on different platforms.
  • Write once and execute anywhere
(Image above illustrates basic web approach application development)
Today many application frameworks like Sencha Touch, iUI, JQueery Mobile, etc. provides extensive support for the HTML5 features and useful in many ways to create a mobile web application. But all the above frameworks rely entirely on web technologies, you can easily host those apps on your web server and have your users find and access them directly from their browsers.

Sometimes though, you’ll want to distribute your application in different ways, including via various app stores. Imagine the best of both worlds: build an application with HTML5, JavaScript or some other competing web frameworks, and then distribute it alongside all of those other native apps.

4. Limitations with HTML5 & JavaScript based application

Although HTML5 is a breakthrough in the mobility space, it couldn’t applaud the way it aimed to achieve it. It doesn’t allow developers to access the native mobile app capability like Camera, GPS, Barcode Scanning, etc. Here is the need of PhoneGap (Codova)

5. PhoneGap Features

PhoneGap is an open source development framework for building cross platform mobile apps. It allows you to package your mobile web application code and resources into a binary app and ready to distribute to Apple, Android, Palm, Symbian, and BlackBerry devices. It is not only the purpose of PhoneGap to distribute the web application to application store. It is also providing the feature to access the device hardware from web application.

So, if you’ve ever wondered how to make your mobile web app access a handset’s file-system, use JavaScript to make it vibrate, prompt users to use the camera, or even check the device’s current network state, then PhoneGap approach is the answer.

6. PhoneGap supported platforms

  • iPhone / iPhone 3G and Higher
  • Blackberry OS 5.x and Newer
  • Android
  • Web OS
  • Windows Phone 7
  • Symbian
  • Bada

Hardware Features support table

7. Advantages of PhoneGap (Cordova)

  • One codebase can be maintained for multiple platforms
  • Reuse existing web developer skills
  • Faster development
  • Based on open standards

stacktips avtar

Editorial

StackTips provides programming tutorials, how-to guides and code snippets on different programming languages.