PhoneGap系列专题之一:架构基础及工作原理介绍

PhoneGap系列专题之一:架构基础及工作原理介绍

本篇文章从PhoneGap由来、功能以及工作原理,力争由浅入深介绍PhoneGap框架。

为什么需要PhoneGap?

移动技术的发展对于开发人员来说是个悲剧,开发应用需顾及到不同平台的框架和开发语言,如iPhone、Android、Windows Mobile等。
PhoneGap基于标准的Web技术,在Web应用和设备之间搭建一个通信的桥梁,封装各种设备平台差异,提供统一的JavaScript接口。 
PhoneGap是一个标准的开源框架,用PhoneGap开发移动应用是免费的,无论是商业或开源。

PhoneGap能做什么?

1、基于Web技术开发移动设备客户端应用
用您熟悉的JavaScript、HTML技术,或者结合移动Web UI框架jQuery MobileSencha Touch 开发跨平台移动客户端。
2、用PhoneGap访问设备本地API
提供跨平台设备访问能力,以下列出访问设备部分功能,本系列专题在以后文章中详解使用方法。
ACCELEROMETER(重力感应)
CAMERA(摄像机)
COMPASS(指南针)
CONTACTS(通讯录)
FILE(文件)
GEOLOCATION(地理定位)
MEDIA(媒体)
NETWORK(网络)
NOTIFICATION (通知)
STORAGE(Sqlite数据库存储)
3、发布您的程序到不同移动平台
Phongap Build 提供在线打包Web应用到各移动平台客户端的能力,下一篇文章实例介绍将本社区开源项目Sencha Touch 2 DEMO打包成Android平台APK文件的方法。下图是PhoneGap Build在线打包完成,并且提供下载的界面:
 PhoneGap系列专题之一:架构基础及工作原理介绍
 

PhoneGap如何工作?

PhoneGap架构拥有强大的跨平台访问设备能力,但是其工作原理并不神秘,下面以iPhone和Android平台为例进行分析。
iPhone和Android平台共同点是都有内置的WebView组件,其具备两个特性:
1、WebView组件实质是移动设备的内置浏览器
WebView这个内置浏览器特性是Web能被打包成本地客户端的基础,可方便的用HTML5、CSS3页面布局,这是移动Web技术的优势相对于原生开发。
2、WebView提供Web和设备本地API双向通信的能力
PhoneGap针对不同平台的WebView做了扩展和封装,使WebView这个组件变成可访问设备本地API的强大浏览器,所以开发人员在PhoneGap框架下可通过JavaScript访问设备本地API。
明白以上两个特性,参照下面PhoneGap与设备本地API通信图,一个成熟的PhoneGap技术客户端运行状况如下:
应用运行在WebView组件上  —》 通过PhoneGap在各平台的扩展  —》 最终访问设备本地资源

【转载请注明以下信息】

作者:刚子

来自:移动Web开发社区

原文链接:http://www.html5mobi.com/discussion/164/phonegap

下篇文章预告:PhoneGap系列专题之二:实例讲解在线打包Web到Android平台客户端应用

相关知识链接:刚子另一篇综合介绍移动Web开发技术的PPT下载

相关推荐