PhoneGap是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台。它使开发者能够利用iPhone,Android,Palm,Symbian,WP7,WP8,Bada和Blackberry智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等,此外PhoneGap拥有丰富的插件,可以调用。
定义编辑
它需要特定平台提供的附加软件,例如iPhone的iPhone SDK,Android的Android SDK等,也可以和DW5.5及以上版本配套开发。使用PhoneGap只比为每个平台分别建立应用程序好一点点,因为虽然基本代码是一样的,但是你仍然需要为每个平台分别编译应用程序。
2起源编辑
第一段PhoneGap代码是在2008年8月的iPhoneDevCamp上写成的。创建它的一个主要动力是基于一个几乎每一个单独的iPhone开发新手都要面对的简单事实:Objective-C是一个对Web开发人员来说非常陌生的环境,并且Web开发人员的数量远远多于Objective-C开发人员的数量。
问题是,是否有人可以开发一个框架,让Web开发人员可以利用他们所有的HTML、CSS和JavaScript知识,而且仍旧可以同iPhone的重要本地应用程序(如摄像头和通讯录)交互呢?
就在那一年,PhoneGap获了奖并开始支持Android平台,对人数不断增长的移动开发人员变得越来越有用,这些人员需要在更多的平台上获得代码支持。
3状态评估编辑
-
加速计
-
摄像头
-
罗盘
-
通讯录
-
文档
-
地理定位
-
媒体
-
网络
-
通知(警告、声音和振动)
-
存储
如果正在为iPhone或Android设备做开发,那么这些功能都是支持的。如果是为BlackBerry、webOS、Windows Phone 7、Symbian或Bada设备做开发,则有些功能就不支持了(例如,在Windows Phone 7上,就不支持摄像头、罗盘或存储功能。老版的BlackBerry型号支持地理定位、通知以及网络的可达性,但仅此而已)。
未来发行版本的路线图包括对Contact API的升级,将其更新到最新的W3C规范。此外,计划支持以下功能(这只是尝试,而非完整的路线图):
-
加密
-
Websockets
-
Web通知
-
HTML媒体捕获
-
Calendar API
-
国际化支持
-
命令行编译
-
网损/恢复事件
4版本编辑
2011年7月29日,PhoneGap发布了1.0版产品。PhoneGap 1.0的推出,该公司表示,重点是访问本地设备的API。
其他的改进包括:
API的整体稳定和“可插拔”的架构W3C DAP API的兼容性联系人API远程调试工具一个新的统一的桥接口,使增加平台和平台扩展容易改进的插件开发流程。
2011年10月1日,PhoneGap发布了1.1.0版产品。
新功能:
1.支持黑莓playbook的WebWorks并入。
2.orientationchange事件。
3.媒体审查(使用HTML5的音频和/或正常化的API)。
2012年3月6日,PhoneGap发布了1.5.0版产品。
2013年1月 PhoneGap发布了2.3.0版产品
Adobe已经发布PhoneGap2.3.0完全支持Windows Phone 8。它还包括支持inappbrowser这使您可以在全屏模式观看视频文件。新版本提供了一个在文件传输失败能够删除不完整文件的新特性,还包括插件查询urlisallowed()方法抽象。
PhoneGap2.3.0包括辅助脚本转换cordova.plist向config.xml和包括了几个bug修复,详细的官方更新日志。该device的name属性已被否决所有平台和一个新的属性被命名为device.model已被释放来取代它。
该inappbrowser具有相同功能的childbrowser,包括事件的支持和不使用软件白名单。
PhoneGap2.3.0有固定的例外而搜索邮件联系人。它也修正了一个问题,而将照片从https地址联系和科尔多瓦的命令,在他们的空间路径。
PhoneGap2.3.0包括辅助脚本转换cordova.plist向config.xml和包括了几个bug修复,详细的官方更新日志。该device的name属性已被否决所有平台和一个新的属性被命名为device.model已被释放来取代它。
该inappbrowser具有相同功能的childbrowser,包括事件的支持和不使用软件白名单。
PhoneGap2.3.0有固定的例外而搜索邮件联系人。它也修正了一个问题,而将照片从https地址联系和科尔多瓦的命令,在他们的空间路径。
5功能编辑
1、兼容性。完全做到了written once, run everywhere。
2、标准化。PhoneGap用W3C标准,特别标准,Web App直接一字不改就能运行。尤其是和JQ Mobile结合在一起使用,实在是威力无穷啊!
3、用JavaScript+HTML5。你说这和iOS以及Android的代码加XML有区别吗?我看都差不多。
当然目前PhoneGap缺陷还是蛮多的,比如运行速度慢,UI反应延时——这是个致命伤。不过嘛,这种问题是会随着技术的进步而消失的。它的优势是无与伦比的:开发成本低——笔者个人估计,至多是Native App的五分之一吧。伟大的政论家托马斯·约瑟夫·登宁,资本主义为了100%的利润,它就敢践踏一切人间法律。跨平台的流行是不可避免的。当然,Native App永远会有一席之地,比如高端游戏.
6公司近况编辑
电脑软件公司Adobe 2011年10月4日宣布收购了创建了HTML5 移动应用框架PhoneGap 和PhoneGap Build的新创公司Nitobi Software。
收购后,Adobe将为开发人员提供两个强大的跨平台原生移动应 用程序开发工具:基于 HTML5 和 JavaScript 脚本的 PhoneGap,以及 Adobe Flash? 与Adobe AIR?。PhoneGap 的开源框架目前已被下载超过 60 万次,有几千款用PhoneGap 构建的应用程序已经进入Android、iOS、黑莓和其他操作系统的移动应用程序商店当中。[3]
7支持平台编辑
PhoneGap目前支持的操作系统包含:
Feature
|
iPhone /iPhone 3G
|
iPhone 3GS and newer
|
5.x
|
6.0+
|
|||||
---|---|---|---|---|---|---|---|---|---|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
|
不适用
|
是
|
是
|
不适用
|
不适用
|
是
|
是
|
不适用
|
是
|
|
通讯簿
|
是
|
是
|
是
|
是
|
是
|
不适用
|
是
|
是
|
是
|
档案
|
是
|
是
|
是
|
是
|
是
|
不适用
|
是
|
不适用
|
不适用
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
|
多媒体
|
是
|
是
|
是
|
不适用
|
不适用
|
不适用
|
是
|
不适用
|
不适用
|
网络
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
通知(alert)
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
通知(sound)
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
通知(vibration)
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
存储
|
是
|
是
|
是
|
是
|
是
|
是
|
是
|
不适用
|
不适用
|
8前景编辑
Adobe公开表示将会为HTML5开发推出更多有意义的工具。有业内人士表示,Adobe的HTML5战略特别值得注意,此外Adobe对于乔布斯的此番公开批评曾积极地回应道:“乔布斯说的不都是对的。”这是个好的信号,在flash和html5之间犹豫的开发者可以大胆的使用phonegap了,另外html5更注重移动平台,flash更适合pc端。在html5移动应用的架构选择上,PhoneGap无疑是最佳的开发模式。