一种跨移动终端的native能力开发方法及装置制造方法

文档序号:6524630阅读:117来源:国知局
一种跨移动终端的native能力开发方法及装置制造方法
【专利摘要】本发明提出了一种跨移动终端的native能力开发方法,包括如下步骤:将业务需求采用统一规范的js语言实现;不同移动终端分别通过各自的js引擎将所述js语言解析成对应的native能力;所述native能力包括能力js函数,所述能力js函数用于向应用提供统一调用接口;应用调用所述native能力。本发明还涉及一种实现上述开发方法的装置。实施本发明的跨移动终端的native能力开发方法及装置,具有以下有益效果:消耗较少的人力、工作量较小、开发维护成本较低。
【专利说明】—种跨移动终端的native能力开发方法及装置
【技术领域】
[0001]本发明涉及移动终端领域,特别涉及一种跨移动终端的native能力开发方法及
装置。
【背景技术】
[0002]目前市场上主流的移动终端操作系统有ios、android,native (原生)能力在不同的操作系统上的表现形式和实现方式都可能不一样。由于不同的操作系统的底层实现存在差异,要想在不同的操作系统上获得表现形式和实现方式一样的native能力,就必须在这些系统上独立做开发适配,以达到接口和表现形式的统一。图1为现有的native能力调用示意图,图Ι-a为ios的native能力调用示意图,图l_b为android的native能力调用示意图。现有技术中,通过直接调用native能力开发应用,这样会存在以下问题:需要的开发人员较多,每个操作系统都需要有相应的开发人员,并且一直做相应的维护,这样需要消耗大量的人力,同时维护成本较高;同时由于接口不好统一,每个开发人员都需要专注于本系统的接口实现,其工作量较大,开发成本较高。

【发明内容】

[0003]本发明要解决的技术问题在于,针对现有技术的上述消耗大量人力、工作量较大、开发维护成本较高的缺陷,提供一种消耗较少的人力、工作量较小、开发维护成本较低的跨移动终端的native能力开发方法及装置。
[0004]本发明解决其技术问题所采用的技术方案是:构造一种跨移动终端的native能力开发方法,包括如下步骤:
A)将业务需求采用统一规范的js(JavaScript)语言实现;
B)不同移动终端分别通过各自的js引擎将所述js语言解析成对应的native能力;所述native能力包括能力js函数,所述能力js函数用于向应用提供统一调用接口 ;
C)应用调用所述native能力。
[0005]在本发明所述的跨移动终端的native能力开发方法中,所述native能力还包括能力native对象,所述能力native对象为用于执行能力逻辑的native代码集合。
[0006]在本发明所述的跨移动终端的native能力开发方法中,所述步骤C)进一步包括: Cl)所述应用携带基础能力接口规定的参数和基础能力回调,通过基础能力js调用基
础能力;
C2)所述基础能力js将所述基础能力回调包装好,然后携带能力名称、能力方法、调用参数和包装后的回调方法,请求js/native调用代理对象调用包装后的能力;
C3)所述js/native调用代理对象为本次调用分配回调id,并将所述回调id与回调方法进行键值对映射,同时保存所述回调id ;
C4)所述js/native调用代理对象携带所述能力名称、能力方法、调用参数和回调id通过能力管理模块接口请求调用native能力; C5)能力管理模块根据所述调用参数得到应用id ;所述js/native调用代理对象是所述基础能力js和能力管理模块的中间转换层;
C6)所述能力管理模块根据能力名称找到能力组件,并通过所述能力组件请求调用所 native 倉泛力;
C7)所述能力组件执行能力逻辑并携带能力执行结果和回调id通过webview传给所述js/native调用代理对象,所述js/native调用代理对象通过所述回调id找到对应的回调方法,并通过所述回调方法将所述能力执行结果通过所述基础能力js回调给所述应用。
[0007]在本发明所述的跨移动终端的native能力开发方法中,所述步骤C)进一步包括: Cl)所述应用携带基础能力接口规定的参数和基础能力回调,通过基础能力js调用基
础能力;
C2)所述基础能力js将所述基础能力回调包装好,然后携带能力名称、能力方法、调用参数和包装后的回调方法,请求js/native调用代理对象调用包装后的能力;
C3)所述js/native调用代理对象为本次调用分配回调id,并将所述回调id与回调方法进行键值对映射,同时保存所述回调id ;
C4)所述js/native调用代理对象携带所述能力名称、能力方法、调用参数和回调id通过能力管理模块接口请求调用native能力;
C5)能力管理模块根据所述调用参数得到应用id ;所述js/native调用代理对象是所述基础能力js和能力管理模块的中间转换层;
C6)所述能力管理模块根据能力名称找到能力组件,并通过所述能力组件请求调用所 native 倉泛力;
C7)所述能力组件执行能力逻辑并携带执行结果和回调id通过webview传给所述js/native调用代理对象,所述js/native调用代理对象通过所述回调id找到对应的回调方法,并通过所述回调方法将所述执行结果通过所述基础能力js回调给所述应用。
[0008]在本发明所述的跨移动终端的native能力开发方法中,所述步骤C7)进一步包括:
C71)所述能力组件执行能力逻辑并得到能力执行结果;
C72)所述能力组件携带所述能力执行结果和回调id,通过装载url执行js函数将其返回给 webview(—种 JavaScript 引擎);
C73)所述webview将所述回调id和能力执行结果传给所述js/native调用代理对象; C74)所述js/native调用代理对象通过所述回调id找到对应的回调方法;
C75)所述js/native调用代理对象通过所述回调方法将所述能力执行结果回调给所述基础能力js ;
C76)所述基础能力js回调给所述应用。
[0009]本发明还涉及一种实现上述跨移动终端的native能力开发方法的装置,包括: 业务需求实现单元:用于将业务需求采用统一规范的js语言实现;
解析单元:用于使不同移动终端分别通过各自的js引擎将所述js语言解析成对应的native能力;所述native能力包括能力js函数,所述能力js函数用于向应用提供统一调用接口 ;
调用单元:用于使应用调用所述native能力。[0010]在本发明所述的实现上述跨移动终端的native能力开发方法的装置中,所述native能力还包括能力native对象,所述能力native对象为用于执行能力逻辑的native代码集合。
[0011]在本发明所述的实现上述跨移动终端的native能力开发方法的装置中,所述调用单元进一步包括:
基础能力调用模块:用于使所述应用携带基础能力接口规定的参数和基础能力回调,通过基础能力js调用基础能力;
包装请求模块:用于使所述基础能力js将所述基础能力回调包装好,然后携带能力名称、能力方法、调用参数和包装后的回调方法,请求js/native调用代理对象调用包装后的能力;
分配映射模块:用于使所述js/native调用代理对象为本次调用分配回调id,并将所述回调id与回调方法进行键值对映射,同时保存所述回调id ;
native能力调用请求模块:用于使所述js/native调用代理对象携带所述能力名称、能力方法、调用参数和回调id通过能力管理模块接口请求调用native能力;
应用id获取模块:用于使能力管理模块根据所述调用参数得到应用id ;所述js/native调用代理对象是所述基础能力js和能力管理模块的中间转换层;
组件寻找请求模块:用于使所述能力管理模块根据能力名称找到能力组件,并通过所述能力组件请求调用所述native能力;
结果回调模块:用于使所述能力组件执行能力逻辑并携带能力执行结果和回调id通过webview传给所述js/native调用代理对象,所述js/native调用代理对象通过所述回调id找到对应的回调方法,并通过所述回调方法将所述能力执行结果通过所述基础能力js回调给所述应用。
[0012]在本发明所述的实现上述跨移动终端的native能力开发方法的装置中,所述组件寻找请求模块进一步包括:
能力组件寻找模块:用于使所述能力管理模块根据能力名称找到能力组件;
请求调用模块:用于使所述能力管理模块携带所述应用id、能力方法、调用参数和回调id通过找到的所述能力组件请求调用所述native能力。
[0013]在本发明所述的实现上述跨移动终端的native能力开发方法的装置中,所述结果回调模块进一步包括:
能力执行模块:用于使所述能力组件执行能力逻辑并得到能力执行结果;
装载返回模块:用于使所述能力组件携带所述能力执行结果和回调id,通过装载url执行js函数将其返回给webview ;
结果传送模块:用于使所述webview将所述回调id和能力执行结果传给所述js/native调用代理对象;
回调方法寻找模块:用于使所述js/native调用代理对象通过所述回调id找到对应的回调方法;
结果回调基础能力模块:用于使所述js/native调用代理对象通过所述回调方法将所述能力执行结果回调给所述基础能力js ;
回调应用模块:用于使所述基础能力js回调给所述应用。[0014]实施本发明的跨移动终端的native能力开发方法及装置,具有以下有益效果:由于将业务需求采用统一规范的js语言实现,不同移动终端分别通过各自的js引擎将js语言解析成对应的native能力;同时native能力包括能力js函数,能力js函数用于向应用提供统一调用接口 ;然后应用调用所述native能力;由于js语言强大、灵活、面向对象,所以能够实现跨平台(跨移动终端),每个操作系统不再需要有相应的开发人员一直做维护,同时由于提供统一调用接口,所以不需要开发人员专注于某操作系统的接口实现,所以消耗的人力较少、工作量较小,开发维护成本较低。
【专利附图】

【附图说明】
[0015]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0016]图1为【背景技术】中现有的native能力调用示意图;
图2为本发明跨移动终端的native能力开发方法及装置一个实施例中native能力开发的结构示意图;
图3为所述实施例中开发方法的流程图;
图4为所述实施例中应用调用native能力的具体流程图;
图5为所述实施例中能力管理模块根据能力名称找到能力组件,并通过能力组件请求调用native能力的具体流程图;
图6为所述实施例中执行能力逻辑并将执行结果回调给应用的具体流程图;
图7为所述实施例中native能力开发的具体示意图;
图8为所述实施例中开发方法的时序图;
图9为所述实施例中装置的结构示意图;
图10为所述实施例中组件寻找请求模块和结果回调模块的结构示意图。
【具体实施方式】
[0017]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0018]在本发明跨移动终端的native能力开发方法及装置实施例中,其native能力开发的结构示意图如图2所示。其开发方法的流程图如图3所示。图3中,该跨移动终端的native能力开发方法包括如下步骤:
步骤SOl将业务需求采用统一规范的js语言实现:本步骤中,将业务需求采用统一规范的js语言实现。由于js语言强大、灵活和面向对象的特点,这些都足以让它成为一种跨平台开发的通用语言。
[0019]步骤S02不同移动终端分别通过各自的js引擎将js语言解析成对应的native能力:本步骤中,不同移动终端分别通过各自的js引擎(泛指能解析JavaScript语言的库,在不同的操作系统,对应不同的库,但他们的功能都一样,就是解析JavaScript语言)将js语言解析成对应的native能力,例如:具有ios操作系统的移动终端采用ios js引擎(webview组件,js引擎的一种),具有android操作系统的移动终端采用android js引擎(webview组件)。本实施例中,native能力包括能力js函数,能力js函数用于向应用提供统一调用接口 ;也就是通过js语言,对多个移动操作系统提供统一的native能力调用接口,所以不需要开发人员专注于某操作系统的接口实现,每个操作系统不再需要有相应的开发人员一直做维护,所以消耗的人力较少、工作量较小,开发维护成本较低。值得一提的是,本实施例中,native能力还包括能力native对象,能力native对象为用于执行能力逻辑的native代码集合。
[0020]步骤S03应用调用native能力:本步骤中,应用调用native能力。
[0021]对于本实施例而言,上述步骤S03还可进一步细化,其细化后的流程图如图4所示。图4中,上述步骤S03进一步包括如下步骤:
步骤S31应用携带基础能力接口规定的参数和基础能力回调,通过基础能力js调用基础能力:本步骤中,应用携带基础能力接口规定的参数和能力回调,通过基础能力js调用基础能力。
[0022]步骤S32基础能力js将基础能力回调包装好,然后携带能力名称、能力方法、调用参数和包装后的回调方法,请求js/native调用代理对象调用包装后的能力:本步骤中,基础能力js将基础能力回调包装好,然后携带能力名称、能力方法、调用参数和包装后的回调方法,请求js/native调用代理对象调用包装后的能力。关于js/native调用代理对象,稍后会进行详细描述。
[0023]步骤S33 js/native调用代理对象为本次调用分配回调id,并将回调id与回调方法进行键值对映射,同时保存回调id:本步骤中,js/native调用代理对象为本次调用分配一个唯一的回调id,并将回调id与回调方法通过键值对映射,然后保存回调id。对于将回调id与回调方法通过键值对映射,也就是通过回调id,就可以找到其对应的回调方法。
[0024]步骤S34 js/native调用代理对象携带能力名称、能力方法、调用参数和回调id通过能力管理模块接口请求调用native能力:本步骤中,js/native调用代理对象携带能力名称、能力方法、调用参数和回调id通过能力管理模块接口请求调用native能力。这里,能力管理模块接口为统一的native能力API接口,这样可让应用能保持高度一致。
[0025]步骤S35能力管理模块根据调用参数得到应用id:本步骤中,能力管理模块根据调用参数得到应用id。值得一提的是,js/native调用代理对象是基础能力js和能力管理模块的中间转换层,负责给基础能力js封装回调方法,分配回调id,基础能力js通过它来调用能力管理管理模块。能力组件最终也是通过js/native调用代理对象来将能力执行结果回调给基础能力js。
[0026]步骤S36能力管理模块根据能力名称找到能力组件,并通过能力组件请求调用native能力:本步骤中,能力管理模块根据能力名称找到能力组件(或能力组件实例),并通过能力组件请求调用native能力。
[0027]步骤S37能力组件执行能力逻辑并携带执行结果和回调id通过webview传给js/native调用代理对象,js/native调用代理对象通过回调id找到对应的回调方法,并通过回调方法将执行结果通过基础能力js回调给应用:本步骤中,能力组件执行能力逻辑并携带执行结果和回调id通过webview传给js/native调用代理对象,js/native调用代理对象通过回调id找到对应的回调方法,并通过回调方法将执行结果通过基础能力js回调
给应用。
[0028]对于本实施例而言,上述步骤S36还可进一步细化,其细化后的流程图如图5所示。图5中,上述步骤S36进一步包括如下步骤:
步骤S361能力管理模块根据能力名称找到能力组件:本步骤中,能力管理模块根据能力名称找到能力组件。
[0029]步骤S362能力管理模块携带应用id、能力方法、调用参数和回调id通过找到的能力组件请求调用native能力:本步骤中,能力管理模块携带应用id、能力方法、调用参数和回调id通过找到的能力组件请求调用native能力。
[0030]对于本实施例而言,上述步骤S37还可进一步细化,其细化后的流程图如图6所示。图6中,上述步骤S37进一步包括如下步骤:
步骤S371能力组件执行能力逻辑并得到能力执行结果:本步骤中,能力组件执行能力逻辑并得到能力执行结果。
[0031]步骤S372能力组件携带能力执行结果和回调id,通过装载url执行js函数将其返回给webview:本步骤中,能力组件携带能力执行结果和回调id,通过装载url执行js函数,将能力执行结果和回调id返回给webview。
[0032]步骤S373 webview将回调id和能力执行结果传给js/native调用代理对象:本步骤中,webview将回调id和能力执行结果传给js/native调用代理对象。
[0033]步骤S374 js/native调用代理对象通过回调id找到对应的回调方法:本步骤中,js/native调用代理对象通过回调id找到对应的回调方法。
[0034]步骤S375 js/native调用代理对象通过回调方法将能力执行结果回调给基础能力js:本步骤中,js/native调用代理对象通过回调方法将能力执行结果回调给基础能力js。
[0035]步骤S376基础能力js回调给应用:本步骤中,基础能力js将能力执行结果回调
给应用。
[0036]图7为本实施例中native能力开发的具体示意图,图8为本实施例中开发方法的时序图。
[0037]本实施例还涉及一种实现上述跨移动终端的native能力开发方法的装置,其结构示意图如图9所示。图9中,该装置包括业务需求实现单元1、解析单元2和调用单元3 ;其中,业务需求实现单元I用于将业务需求采用统一规范的js语言实现;解析单元2用于使不同移动终端分别通过各自的js引擎将js语言解析成对应的native能力;native能力包括能力js函数,能力js函数用于向应用提供统一调用接口 ;调用单元3用于使应用调用native能力。值得一提的是,本实施例中,上述native能力还包括能力native对象,能力native对象为用于执行能力逻辑的native代码集合。
[0038]本实施例中,调用单元3进一步包括基础能力调用模块31、包装请求模块32、分配映射模块33、native能力调用请求模块34、应用id获取模块35、组件寻找请求模块36和结果回调模块37 ;其中,基础能力调用模块31用于使应用携带基础能力接口规定的参数和基础能力回调,通过基础能力js调用基础能力;包装请求模块32用于使基础能力js将基础能力回调包装好,然后携带能力名称、能力方法、调用参数和包装后的回调方法,请求js/native调用代理对象调用包装后的能力;分配映射模块33用于使js/native调用代理对象为本次调用分配回调id,并将回调id与回调方法进行键值对映射,同时保存回调id ;native能力调用请求模块34用于使js/native调用代理对象携带能力名称、能力方法、调用参数和回调id通过能力管理模块接口请求调用native能力;应用id获取模块35用于使能力管理模块根据调用参数得到应用id ; js/native调用代理对象是基础能力js和能力管理模块的中间转换层;组件寻找请求模块36用于使能力管理模块根据能力名称找到能力组件,并通过能力组件请求调用native能力;结果回调模块37用于使能力组件执行能力逻辑并携带能力执行结果和回调id通过webview传给js/native调用代理对象,js/native调用代理对象通过回调id找到对应的回调方法,并通过回调方法将能力执行结果通过基础能力js回调给应用。值得一提的是,js/native调用代理对象是基础能力js和能力管理模块的中间转换层,负责给基础能力js封装回调方法,分配回调id,基础能力js通过它来调用能力管理管理模块。能力组件最终也是通过js/native调用代理对象来将能力执行结果回调给基础能力js。
[0039]图10为本实施例中组件寻找请求模块和结果回调模块的结构示意图。图10中,组件寻找请求模块36进一步包括能力组件寻找模块361和请求调用模块362 ;其中,能力组件寻找模块361用于使能力管理模块根据能力名称找到能力组件;请求调用模块362用于使能力管理模块携带应用id、能力方法、调用参数和回调id通过找到的能力组件请求调用native能力。结果回调模块37进一步包括能力执行模块371、装载返回模块372、结果传送模块373、回调方法寻找模块374、结果回调基础能力模块375和回调应用模块376 ;其中,能力执行模块371用于使能力组件执行能力逻辑并得到能力执行结果;装载返回模块372用于使能力组件携带能力执行结果和回调id,通过装载url执行js函数将其返回给webview ;结果传送模块373用于使webview将回调id和能力执行结果传给js/native调用代理对象;回调方法寻找模块374用于使js/native调用代理对象通过回调id找到对应的回调方法;结果回调基础能力模块375用于使js/native调用代理对象通过回调方法将能力执行结果回调给基础能力js ;回调应用模块376用于使基础能力js回调给应用。
[0040]总之,在本实施例中,业务需要的开发采用统一规格的js语言,由于js语言强大、灵活和面向对象的特点,这些都足以让它成为一种跨平台开发的通用语言,所以本发明中可以跨多个移动终端,具备跨平台特性,支持多种常见平台;每个移动终端都有自己的js引擎,可以将js解析成native能力,native能力亦可通过js引擎调用js。同时由于提供统一调用接口,所以不需要开发人员专注于某操作系统的接口实现,所以消耗的人力较少、工作量较小,节省开发和维护成本。
[0041]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种跨移动终端的native能力开发方法,其特征在于,包括如下步骤: A)将业务需求采用统一规范的js语言实现; B)不同移动终端分别通过各自的js引擎将所述js语言解析成对应的native能力;所述native能力包括能力js函数,所述能力js函数用于向应用提供统一调用接口 ; C)应用调用所述native能力。
2.根据权利要求1所述的跨移动终端的native能力开发方法,其特征在于,所述native能力还包括能力native对象,所述能力native对象为用于执行能力逻辑的native代码集合。
3.根据权利要求2所述的跨移动终端的native能力开发方法,其特征在于,所述步骤C)进一步包括: Cl)所述应用携带基础能力接口规定的参数和基础能力回调,通过基础能力js调用基础能力; C2)所述基础能力js将所述基础能力回调包装好,然后携带能力名称、能力方法、调用参数和包装后的回调方法,请求js/native调用代理对象调用包装后的能力; C3)所述js/native调用代理对象为本次调用分配回调id,并将所述回调id与回调方法进行键值对映射,同时保存所述回调id ; C4)所述js/native调用代理对象携带所述能力名称、能力方法、调用参数和回调id通过能力管理模块接口请求调用native能力; C5)能力管理模块根据所述调用参数得到应用id ;所述js/native调用代理对象是所述基础能力js和能力管理模块的中间转换层; C6)所述能力管理模块根据能力名称找到能力组件,并通过所述能力组件请求调用所 native 倉泛力; C7)所述能力组件执行能力逻辑并携带能力执行结果和回调id通过webview传给所述js/native调用代理对象,所述js/native调用代理对象通过所述回调id找到对应的回调方法,并通过所述回调方法将所述能力执行结果通过所述基础能力js回调给所述应用。
4.根据权利要求3所述的跨移动终端的native能力开发方法,其特征在于,所述步骤C6)进一步包括: C61)所述能力管理模块根据能力名称找到能力组件; C62)所述能力管理模块携带所述应用id、能力方法、调用参数和回调id通过找到的所述能力组件请求调用所述native能力。
5.根据权利要求3或4所述的跨移动终端的native能力开发方法,其特征在于,所述步骤C7)进一步包括: C71)所述能力组件执行能力逻辑并得到能力执行结果; C72)所述能力组件携带所述能力执行结果和回调id,通过装载url执行js函数将其返回给webview ; C73)所述webview将所述回调id和能力执行结果传给所述js/native调用代理对象; C74)所述js/native调用代理对象通过所述回调id找到对应的回调方法; C75)所述js/native调用代理对象通过所述回调方法将能力所述执行结果回调给所述基础能力js ;C76)所述基础能力js回调给所述应用。
6.一种实现如权利要求1所述的跨移动终端的native能力开发方法的装置,其特征在于,包括: 业务需求实现单元:用于将业务需求采用统一规范的js语言实现; 解析单元:用于使不同移动终端分别通过各自的js引擎将所述js语言解析成对应的native能力;所述native能力包括能力js函数,所述能力js函数用于向应用提供统一调用接口 ; 调用单元:用于使应用调用所述native能力。
7.根据权利要求6所述的实现上述跨移动终端的native能力开发方法的装置,其特征在于,所述native能力还包括能力native对象,所述能力native对象为用于执行能力逻辑的native代码集合。
8.根据权利要求7所述的实现上述跨移动终端的native能力开发方法的装置,其特征在于,所述调用单元进一步包括: 基础能力调用模块:用于使所述应用携带基础能力接口规定的参数和基础能力回调,通过基础能力js调用基础能力; 包装请求模块:用于使所述基础能力js将所述基础能力回调包装好,然后携带能力名称、能力方法、调用参数和包装后的回调方法,请求js/native调用代理对象调用包装后的能力; 分配映射模块:用于使所述js/native调用代理对象为本次调用分配回调id,并将所述回调id与回调方法进行键值对映射,同时保存所述回调id ; native能力调用请求模块:用于使所述js/native调用代理对象携带所述能力名称、能力方法、调用参数和回调id通过能力管理模块接口请求调用native能力; 应用id获取模块:用于使能力管理模块根据所述调用参数得到应用id ;所述js/native调用代理对象是所述基础能力js和能力管理模块的中间转换层; 组件寻找请求模块:用于使所述能力管理模块根据能力名称找到能力组件,并通过所述能力组件请求调用所述native能力; 结果回调模块:用于使所述能力组件执行能力逻辑并携带能力执行结果和回调id通过webview传给所述js/native调用代理对象,所述js/native调用代理对象通过所述回调id找到对应的回调方法,并通过所述回调方法将所述能力执行结果通过所述基础能力js回调给所述应用。
9.根据权利要求8所述的实现上述跨移动终端的native能力开发方法的装置,其特征在于,所述组件寻找请求模块进一步包括: 能力组件寻找模块:用于使所述能力管理模块根据能力名称找到能力组件; 请求调用模块:用于使所述能力管理模块携带所述应用id、能力方法、调用参数和回调id通过找到的所述能力组件请求调用所述native能力。
10.根据权利要求8或9所述的实现上述跨移动终端的native能力开发方法的装置,其特征在于,所述结果回调模块进一步包括: 能力执行模块:用于使所述能力组件执行能力逻辑并得到能力执行结果; 装载返回模块:用于使所述能力组件携带所述能力执行结果和回调id,通过装载url执行js函数将其返回给webview ; 结果传送模块:用于使所述webview将所述回调id和能力执行结果传给所述js/native调用代理对象; 回调方法寻找模块:用于使所述js/native调用代理对象通过所述回调id找到对应的回调方法; 结果回调基础能力模块:用于使所述js/native调用代理对象通过所述回调方法将所述能力执行结果回调给所述基础能力js ; 回调应用模块:用于使所述基础能`力js回调给所述应用。
【文档编号】G06F9/44GK103677843SQ201310706068
【公开日】2014年3月26日 申请日期:2013年12月19日 优先权日:2013年12月19日
【发明者】施东荣, 陈文浩, 张岩, 林建平, 廖炳才, 王付国 申请人:深圳市迈桥科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1