PhoneGap插件

移动开发
PhoneGap有两部分组成:PhoneGap javascript API,即 对在浏览器(支持各种浏览器)上运行的javascript公开的一些原始功能的API;PhoneGap javascript API中,针对不同平台的本地代码。

PhoneGap插件概述

PhoneGap有两部分组成

1.PhoneGap javascript API,即 对在浏览器(支持各种浏览器)上运行的javascript公开的一些原始功能的API

2.PhoneGap javascript API中,针对不同平台的本地代码

这些对我们做成通用是非常有利的

1.通过PhoneGap javascript API访问物理位置

2.通过PhoneGap javascript API访问联系人

3.拨打电话

4.等等

或多或少,我们已经对javascript开放了大部分手机功能

PhoneGap插件局限

(Heavy Weight Lifting、后台处理、复杂的业务逻辑)

尽管,javascript已经比过去快了100x,但是仍不能完成本地代码能完成的Heavy Weight Lifting。另外,如果我们要去做一些后台处理(例如,Android的后台服务),至少目前浏览器是无法无法实现的。同样,如果我们要执行一个非常复杂的业务功能,更喜欢用母语。

比如说,如果你想用PhoneGap去实现一个DropBox的客户端应用,DropBox客户端Heavy Weight Lifting将会在后台不停地监听更改的文件并且保持让其同步。而这样的操作PhoneGap API是无法实现的。

对于这些Heavy Weight Lifting,最好的方法是委托本机代码实现。

PhoneGap插件解决方案

(扩展PhoneGap框架)

很自然就会想到,制作一个解决方法去克服这些问题,PhoneGap已经公开了手机常用功能的Javascript代码

用以下提供的方式可以实现

1.一个自定义的本地组件

2.一个自定义的JavaScript API

注意:为你想支持的平台建立组件,所有这些组件需要用原生组件实现自定义的JavaScript API。

PhoneGap插件整体结构

 

为不同的平台写PhoneGap插件,你必须要实现这两个组件

1.JavaScript组件,将会在自定义组件中显示

2.does the heavy lifting的本机组件

针对不同的平台

在给你一个惊喜之间,先让我们说明一件事情

假设你正在为iOS和Android两个平台,开发PhoneGap插件

有人会认为需要生成以下文件

1.iOS和Android都可以使用的JavaScript文件

2.Android需要的java文件

3.iOS需要的一个*.h文件和一个*.m文件

然而,实际你只需要生成以下文件

1.Android使用的JavaScript文件和java文件

2.iOS需要的一个*.h文件和一个*.m文件,不同iOS的javascript文件

对于自定义的开发者来说,两个javascript文件都应该有相同的接口,但是每个接口的实现会有所有不同。

责任编辑:佚名 来源: phonegapcn
相关推荐

2011-09-13 09:49:59

PhoneGap插件

2011-12-23 10:02:37

PhoneGapAndroid插件

2011-09-05 14:26:43

PhoneGap插件

2011-09-02 13:38:56

PhoneGap插件Android

2012-03-07 11:17:19

AndroidPhoneGap插件

2011-12-19 08:57:46

PhoneGapNativeContr

2012-05-17 08:29:54

PhoneGap误区

2011-12-20 11:20:46

PhoneGap APCompass

2011-12-19 16:09:32

PhoneGap APCamera

2011-12-20 15:34:55

PhoneGap APConnection

2011-12-19 16:26:39

PhoneGap APCapture

2011-12-21 21:56:45

PhoneGap APFile

2011-12-22 09:27:36

PhoneGap APGeolocation

2011-12-20 13:32:52

PhoneGap APContacts

2011-12-22 10:33:39

PhoneGap APNotificatio

2011-12-22 10:45:32

PhoneGap APStorage

2011-12-19 15:30:25

AccelerometPhoneGap AP

2011-12-22 09:54:40

PhoneGap APMedia

2011-12-20 16:09:57

PhoneGap APDevice

2011-12-20 17:15:52

PhoneGap APEvents
点赞
收藏

51CTO技术栈公众号