初识PhoneGap

蓝飞 蓝飞 | 时间:2012-06-07, Thu | 3,876 views
前端开发, 编程算法 

初识phonegap

一、PhoneGap是什么?

PhoneGap是一个标准的开源框架,用PhoneGap开发移动应用是免费的,无论是商业或是开源;一个用基于HTMLCSSJavaScript的,创建跨平台移动应用的快速开发平台。它使开发者能够利用iPhone、Android、Palm、Symbian、WP7、Bada和Blackberry智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等,此外PhoneGap拥有丰富的插件,可以以此扩展无限的功能。

PhoneGap由Nitobi 公司创建,并于2011.10被Adobe收购,并捐赠给Apache基金组织,PhoneGap是唯一的一个支持7个平台的开源移动框架。框架提供了丰富接口用于访问移动设备本地API,能够让你用javascript轻松调用。当前最新版本:1.5。
PhoneGap兼容性

目前开发移动程序框架选择很多,如PhoneGap、Titanium、MonoTouch、Native App,兼容性越强的技术,成本越低,性能越差;兼容性越差的技术,成本越高,性能越好。PhoneGap是目前最被看好的:

  •  兼容性:完全做到了Written Once,Run Everywhere!
  • 标准化:PhoneGap采用W3C标准,Web App直接运行!
  • 采用普通web开发技术:JavaScript+HTM5+CSS3

存在不足:

  • 性能,正常操作速度流畅,频繁操作响应会变慢。
  • 稳定性及资源占用方面,手动频繁操作会引起,响应速度变慢,webkit的WebView不能很好释放内存,导致内存占用上升,甚至会引起应用的crash。

二、PhoneGap如何工作?

PhoneGap架构拥有强大的跨平台访问设备能力,但是其工作原理并不神秘,iPhone和Android平台共同点是都有内置的WebView组件,其具备两个特性:

  • WebView组件实质是移动设备的内置浏览器

WebView这个内置浏览器特性是Web能被打包成本地客户端的基础,可方便的用HTML5、CSS3页面布局,这是移动Web技术的优势相对于原生开发。

  • WebView提供Web和设备本地API双向通信的能力

PhoneGap针对不同平台的WebView做了扩展和封装,使WebView这个组件变成可访问设备本地API的强大浏览器,所以开发人员在PhoneGap框架下可通过JavaScript访问设备本地API。

PhoneGap与设备本地API通信图

PhoneGap与设备本地API通信图

一个成熟的PhoneGap技术客户端运行状况:应用运行在WebView组件上 -> 通过PhoneGap在各平台的扩展 -> 最终访问设备本地资源。

PhoneGap架构图

PhoneGap架构图

三、API指南

Accelerometer 点击进入设备的运动传感器。 Events 通过JavaScript截获本地事件。
Camera 使用设备的摄像头采集照片。 File 通过JavaScript截获本地文件系统。
Capture 使用设备的媒体采集应用程序采集媒体文件。 Geolocation 使得你的应用程序可以访问地理位置信息。
Compass 获取设备指向的方向。 Media 录制和播放音频文件。
Connection 快速检查WiFi或蜂窝网络的信息。 Notification 设备的视觉、声音和触觉提醒。
Contacts 和设备联系人数据库相关操作。 Storage 截获设备的本地存储选项。
Device 收集设备的具体信息。

四、参考资料

1、Javascript移动开发框架

PhoneGap + 合适的javascript开发框架,轻松开发出原生风格的移动应用。选择哪种js框架,你可以通过:《三大移动Web开发框比较分析》一文,选择适合的框架。

2、PhoneGap社区

转自:阿里巴巴UED

如需转载请注明出处:蓝飞技术部落格

当前暂无评论 »