添加应用程序的功能模块的方法和装置与流程

文档序号:12596209阅读:478来源:国知局

本发明涉及计算机技术领域,特别地涉及一种添加应用程序的功能模块的方法和装置。



背景技术:

在移动应用程序领域,Android和iOS等移动平台互不兼容,各有自己的编程方式。移动应用程序通常有两种技术实现方案:一种是用传统web编程的html语言等编写hybrid应用程序,另一种是用各移动平台独有的编程语言和技术实现原生(native)应用程序。hybrid应用程序实际上访问的是网页,占用带宽资源比较大,无法充分利用各平台客户端特性。对于原生应用程序,有比较丰富的功能和较高的用户体验,但由于Android和iOS等移动平台互不兼容,需要新增功能模块时需要专门对应用程序进行整体升级才能完成,对用户来说不太方便。



技术实现要素:

有鉴于此,本发明提供一种添加应用程序的功能模块的方法和装置,能够实现应用程序的横向扩展,无需整体升级应用程序即可新增应用程序模块,方便了用户的使用。

为实现上述目的,根据本发明的一个方面,提供了一种添加应用程序的功能模块的方法。

本发明的添加应用程序的功能模块的方法包括:获取服务端的可扩展标记语言(XML)模板和JavaScript对象表示法(JSON)配置文件,所述XML模板中包含功能模块在应用程序的界面中的呈现方式的配置信息,所述JSON配置文件用于配置所述功能模块的逻辑属性;根 据所述JSON配置文件的内容获取服务端的所述功能模块的配置数据,该配置数据包括所述功能模块样式参数和功能模块初始化参数,然后根据所述XML模板的内容和该配置数据初始化所述功能模块并在所述应用程序的界面呈现所述功能模块。

可选地,所述XML模板中包含多个功能模块的所述配置信息;所述JSON配置文件为多个。

可选地,获取服务端的XML模板和JSON配置文件之前,还包括:在应用程序收到用于呈现智能家居控制界面的外部操作的情况下,触发所述获取。

可选地,所述应用程序包含多个功能模块,每个功能模块分别用于控制一种智能家居设备。

根据本发明的另一方面,提供了一种添加应用程序的功能模块的装置。

本发明的添加应用程序的功能模块的装置包括:第一获取单元,用于获取服务端的可扩展标记语言(XML)模板和JavaScript对象表示法(JSON)配置文件,所述XML模板中包含功能模块在应用程序的界面中的呈现方式的配置信息,所述JSON配置文件用于配置所述功能模块的逻辑属性;第二获取单元,用于根据所述JSON配置文件的内容获取服务端的所述功能模块的配置数据,该配置数据包括所述功能模块样式参数和功能模块初始化参数;模块添加单元,用于根据所述XML模板的内容和该配置数据初始化所述功能模块并在所述应用程序的界面呈现所述功能模块。

可选地,所述XML模板中包含多个功能模块的所述配置信息;所述JSON配置文件为多个。

可选地,所述第一获取单元还用于在应用程序收到用于呈现智能家居控制界面的外部操作的情况下,进行所述获取。

可选地,所述应用程序包含多个功能模块,每个功能模块分别用于控制一种智能家居设备。

根据本发明的技术方案,实现了通过模板语言配置应用程序新增的界面和功能,具体是在服务端保存XML模板和JSON配置文件,XML模板中包含功能模块在应用程序的界面中的呈现方式的配置信息,JSON配置文件用于配置所述功能模块的逻辑属性,在需要升级应用程序时,获取上述XML模板和JSON配置文件以实现对应用程序增加的功能模块的界面解析和逻辑解析,显示应用程序新增的功能模块并实现其运行逻辑,从而实现应用程序的横向扩展,无需整体升级应用程序即可新增应用程序模块。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1是根据本发明实施方式的添加应用程序的功能模块的装置的基本组成部分的示意图。

具体实施方式

以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

在本发明的实施方式中,在原生的移动应用程序中添加用于程序升级的模块,该模块可以为应用程序增加功能模块。在添加时,首先 获取服务端的可扩展标记语言(XML)模板和JavaScript对象表示法(JSON)配置文件。XML模板中包含功能模块在应用程序的界面中的呈现方式的配置信息,JSON配置文件用于配置上述功能模块的逻辑属性。

上述的XML模板示例如下:

上述的JSON配置文件示例如下:

以下对于上述的XML模板做出说明。XML模板里面每一个control节点就是一个控件,即一个功能模块。XML模板中也可包含多个控件 的配置信息。每个控件的6个属性决定了这个控件在界面中的呈现方式,主要是大小和位置,具体如下:

1、horizontalalign:若不设置,默认左对齐,右对齐时left为距离右边;2、verticalalign:若不设置,默认顶对齐,底对齐时top为距离下边;

3、left、top:若不设置,默认为0;

4、width、height:若不设置,默认当前容器最大值;

5、left、top、width、height:均可以设置绝对值和百分比,百分比为0到1之间的小数;

6、width、height:可以设置负数,表示相对于另外一边的比例,-1则为1:1;

7、left:负数表示相对于width的比值,top负数表示相对于height的比值;

8、width、height:设置为0则控件不显示。

以下再对上述的JSON配置文件做出说明。在上面示例中,控件id为c00101,JSON配置文件配置这个控件的逻辑属性,可包括控件内部的界面样式和事件处理方式,以及与应用程序的交互方式、模块初始化参数等。当控件的typeid标记为CCContent时,用于程序升级的模块获取服务端的数据然后按照XML模板中配置的呈现方式来呈现,并可按上述初始化参数进行初始化。

本发明的这种应用程序的升级方式可以应用于许多原生的移动应用程序中。一个典型应用场景是智能家居设备的控制程序。在这种应用程序中,可以包含对一种或多种智能家居设备的控制功能,各个家居设备的控制操作界面也不尽相同。当用户使用该应用程序,进入某一家居设备的控制操作界面时,应用程序触发上述的用于程序升级的模块,以增加对该家居设备的控制操作功能。

图1是根据本发明实施方式的添加应用程序的功能模块的装置的基本组成部分的示意图。该装置是上述的应用程序的一个模块,用来对该应用程序进行升级。如图1所示,添加应用程序的功能模块的装置10主要包括第一获取单元11、第二获取单元12、以及模块添加单元13。

第一获取单元11用于获取服务端的可扩展标记语言(XML)模板和JavaScript对象表示法(JSON)配置文件,所述XML模板中包含功能模块在应用程序的界面中的呈现方式的配置信息,所述JSON配置文件用于配置所述功能模块的逻辑属性;第二获取单元12用于根据所述JSON配置文件的内容获取服务端的所述功能模块的配置数据,该配置数据包括所述功能模块样式参数和功能模块初始化参数;模块添加单元13用于根据所述XML模板的内容和该配置数据初始化所述功能模块并在所述应用程序的界面呈现所述功能模块。第一获取单元11还可用于在应用程序收到用于呈现智能家居控制界面的外部操作的情况下,进行所述获取。

根据本发明实施方式,实现了通过模板语言配置应用程序新增的界面和功能,具体是在服务端保存XML模板和JSON配置文件,XML模板中包含功能模块在应用程序的界面中的呈现方式的配置信息,JSON配置文件用于配置所述功能模块的逻辑属性,在需要升级应用程序时,获取上述XML模板和JSON配置文件以实现对应用程序增加的功能模块的界面解析和逻辑解析,显示应用程序新增的功能模块并实现其运行逻辑,从而实现应用程序的横向扩展,无需整体升级应用程序即可新增应用程序模块。

以上结合具体实施例描述了本发明的基本原理,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要 一定按照时间顺序执行。某些步骤可以并行或彼此独立地执行。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1