PhoneGap
Submitted by bigwiki on
PhoneGap is a mobile development framework produced by Nitobi, purchased by Adobe Systems. It enables software programmers to build applications for mobile devices using JavaScript, HTML5 and CSS3, instead of device-specific languages such as Objective-C. The resulting applications are hybrid, meaning that they are neither truly native (because all layout rendering is done via web views instead of the platform's native UI framework) nor purely web-based (because they are not just web apps, but are packaged as apps for distribution and have access to native device APIs). From 1.9 version onward it is even possible to freely mix native and hybrid code snippets.
History
First developed at an iPhoneDevCamp event in San Francisco, PhoneGap went on to win the People's Choice Award at O'Reilly Media's 2009 Web 2.0 Conference and the framework has been used to develop many apps. Apple Inc. has confirmed that the framework has its approval, even with the new 4.0 developer license agreement changes. The PhoneGap framework is used by several mobile application platforms such as ViziApps, Worklight, Convertigo and appMobi as the backbone of their mobile client development engine. Adobe officially announced the acquisition of Nitobi Software (the original developer) on October 4, 2011. Coincident with that, the PhoneGap code was contributed to the Apache Software Foundation to start a new project called Apache Cordova. The project original name, Apache Callback, was viewed as too generic. Then it also appears in Adobe Systems as Adobe PhoneGap and also as Adobe Phonegap Build.
Early versions of PhoneGap required a person making iOS apps to have an Apple computer, and a person making Windows Mobile apps to have a computer running Windows. After September 2012, the "PhoneGap Build" service allows a programmer to upload his source code to a "cloud compiler" that generates apps for every supported platform.
Supported platforms
PhoneGap currently supports development for the operating systems Apple iOS, Google Android, HP webOS, Microsoft Windows Phone, Nokia Symbian OS, RIM BlackBerry and Tizen. Support for recent versions, such as BlackBerry 5 and 6 and Windows Phone 7, is being implemented now. Bada (the operating system used by the Samsung Wave S8500) support is "coming soon". The table below is a list of supported features for each operating system.
Feature | iPhone / iPhone 3G |
iPhone 3GS and newer |
Android 1.0 – 4.2 |
Windows Phone |
4.6–4.7 |
5.x–6.0+ |
Bada |
Symbian | webOS |
Tizen |
---|---|---|---|---|---|---|---|---|---|---|
Accelerometer | Yes | Yes | Yes | Yes | N/A | Yes | Yes | Yes | Yes | Yes |
Camera | Yes | Yes | Yes | Yes | N/A | Yes | Yes | Yes | Yes | Yes |
Compass | N/A | Yes | Yes | Yes | N/A | N/A | Yes | N/A | Yes | Yes |
Contacts | Yes | Yes | Yes | Yes | N/A | Yes | Yes | Yes | N/A | N/A |
File | Yes | Yes | Yes | Yes | N/A | Yes | N/A | N/A | N/A | N/A |
Geolocation | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Media | Yes | Yes | Yes | Yes | N/A | N/A | N/A | N/A | N/A | Yes |
Network | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Notification (alert) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Notification (sound) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Notification (vibration) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | N/A |
Storage | Yes | Yes | Yes | Yes | N/A | Yes | N/A | Yes | Yes | Yes |
Barcode scanner | Yes | Yes | Yes | N/A | Yes | Yes | N/A | N/A | N/A | N/A |