一种页面构建的方法、装置、设备及存储介质制造方法及图纸

技术编号:19388694 阅读:24 留言:0更新日期:2018-11-10 01:57
本发明专利技术公开了一种页面构建的方法、装置、设备及存储介质,其中,该方法应用于基于混合开发模式所开发的应用程序,且该方法包括:获取来自服务端的页面更新信息,页面更新信息包括:页面布局数据及通过第一脚本语言编写的业务逻辑数据;基于预置的数据传输通道,通过第一脚本语言组件将业务逻辑数据发送至第二脚本语言组件;基于业务逻辑数据及页面布局数据,通过原生系统构建目标页面;本发明专利技术的方法、装置、设备及存储介质,通过应用程序的原生系统执行服务端下发的页面构建信息以完成页面构建,从而,就可以实现应用程序的热更新,而无需进行应用程序的重新发版,有助于降低开发成本。

Method, device, device and storage medium for page construction

The invention discloses a method, device, device and storage medium for page construction, in which the method is applied to applications developed based on hybrid development mode, and the method includes: obtaining page update information from the server side, and page update information includes: page layout data and through the first script language. Business logic data compiled; business logic data is transmitted to the second script language component through the first script language component based on the preset data transmission channel; target pages are constructed through the native system based on business logic data and page layout data; and methods, devices, devices and storage media of the present invention are communicated. The native system of the application executes the page construction information downloaded from the server to complete the page construction, so that the hot update of the application can be realized without the need to re-distribute the application, which helps to reduce the development cost.

【技术实现步骤摘要】
一种页面构建的方法、装置、设备及存储介质
本专利技术涉及互联网
,尤其涉及一种页面构建的方法、装置、设备及存储介质。
技术介绍
随着互联网技术和智能终端技术的发展,各种应用已经普及到大众生活的方方面面,例如,观影、购物、支付、社交、提供各种资讯等等。目前这些智能终端的应用常采用本地应用(NativeApp)实现,本地应用是通过使用原生操作系统提供的API(ApplicationProgrammingInterface,应用程序编程接口)编程实现,可以保证应用的高性能和良好的交互体验。然而,现有的本地应用中页面的交互行为(如交互跳转)在智能终端固化,如果想改变应用的交互行为,必须依赖运营商对不同平台(安卓系统或ios系统等)下的发版的修改,智能终端再重新安装本地应用。所以,终端应用的更新严重依赖该应用的发版,导致终端应用更新的成本较高。
技术实现思路
本专利技术的主要目的在于提出一种页面构建的方法、装置、设备及存储介质,其克服了现有技术中因只能通过重新发版才能完成终端应用的更新而导致更新成本较高的问题。根据本专利技术的第一个方面,提供了一种页面构建的方法,所述方法包括:获取来自服务端的页面更新信息,所述页面更新信息包括:页面布局数据及通过第一脚本语言编写的业务逻辑数据;基于预置的数据传输通道,通过第一脚本语言组件将所述业务逻辑数据发送至第二脚本语言组件,其中,在混合开发模式下,所述第一脚本语言组件通过所述数据传输通道与所述第二脚本语言组件进行交互,所述第二脚本语言组件注册于原生系统;基于所述业务逻辑数据及所述页面布局数据,通过所述原生系统构建目标页面。可选的,在所述获取来自服务端的页面更新信息之后,且在所述通过第一脚本语言组件将所述业务逻辑数据发送至第二脚本语言组件之前,所述方法还包括:对所述页面更新信息是否合法进行校验;在校验通过的情况下,将所述页面更新信息存储至本地预设位置,以供所述第一脚本语言组件将所述业务逻辑数据从所述本地预设位置发送至第二脚本语言组件。可选的,所述基于预置的数据传输通道,通过第一脚本语言组件将所述业务逻辑数据发送至第二脚本语言组件,包括:根据获取到的页面更新信息,生成所述页面更新信息的索引文件;基于所述索引文件,通过所述第一脚本语言组件查找到所述业务逻辑数据,所述第一脚本语言组件具体为:在混合开发模式下,与原生系统中用于构建页面的组件所实现的功能相对应的非原生组件;通过所述第一脚本语言组件将所述业务逻辑数据转换为所述原生系统可以执行的业务逻辑数据;将转换为所述原生系统可以执行的业务逻辑数据发送至所述第二脚本语言组件。可选的,所述基于所述业务逻辑数据及所述页面布局数据,通过所述原生系统构建目标页面,包括:对依据所述索引文件查找到的所述页面布局数据进行解析,得到布局元素;基于所述布局元素,通过所述原生系统反射执行所述原生系统可以执行的业务逻辑数据,以生成视图数据;将所述视图数据添加到所述第二脚本语言组件中进行加载耦合,以完成所述目标页面构建。可选的,所述原生系统可以执行的业务逻辑数据包括:页面更新逻辑数据;在所述将视图数据添加到所述第二脚本语言组件中进行加载耦合,以完成所述目标页面构建之后,所述方法还包括:基于所述页面更新逻辑数据,通过所述原生系统查找到所述视图数据;基于所述视图数据,通过原生系统反射执行所述页面更新逻辑数据,以完成对所述目标页面的更新。根据本专利技术的第二个方面,提供了一种页面构建的装置,包含于基于混合开发模式所开发的应用程序,所述装置包括:获取模块,用于获取来自服务端的页面更新信息,所述页面更新信息包括:页面布局数据及通过第一脚本语言编写的业务逻辑数据;发送模块,用于基于预置的数据传输通道,通过第一脚本语言组件将所述业务逻辑数据发送至第二脚本语言组件,其中,在混合开发模式下,所述第一脚本语言组件通过所述数据传输通道与所述第二脚本语言组件进行交互,所述第二脚本语言组件注册于原生系统;构建模块,用于基于所述业务逻辑数据及所述页面布局数据,通过所述原生系统构建目标页面。可选的,所述装置包括:校验模块,用于在所述获取来自服务端的页面更新信息之后,且在所述通过第一脚本语言组件将所述业务逻辑数据发送至第二脚本语言组件之前,对所述页面更新信息是否合法进行校验;存储模块,用于在校验通过的情况下,将所述页面更新信息存储至本地预设位置,以供所述第一脚本语言组件将所述业务逻辑数据从所述本地预设位置发送至第二脚本语言组件。可选的,所述发送模块包括:索引单元,用于根据获取到的页面更新信息,生成所述页面更新信息的索引文件;查找单元,用于基于所述索引文件,通过所述第一脚本语言组件查找到所述业务逻辑数据,所述第一脚本语言组件具体为:在混合开发模式下,与原生系统中用于构建页面的组件所实现的功能相对应的非原生组件;转换单元,用于通过所述第一脚本语言组件将所述业务逻辑数据转换为所述原生系统可以执行的业务逻辑数据;发送单元,用于将转换为所述原生系统可以执行的业务逻辑数据发送至所述第二脚本语言组件。可选的,所述构建模块包括:解析单元,用于对依据所述索引文件查找到的所述页面布局数据进行解析,得到布局元素;生成单元,用于基于所述布局元素,通过所述原生系统反射执行所述原生系统可以执行的业务逻辑数据,以生成视图数据;加载单元,用于将所述视图数据添加到所述第二脚本语言组件中进行加载耦合,以完成所述目标页面构建。可选的,所述原生系统可以执行的业务逻辑数据包括:页面更新逻辑数据;所述装置还包括:视图查找单元,用于在所述将视图数据添加到所述第二脚本语言组件中进行加载耦合,以完成所述目标页面构建之后,基于所述页面更新逻辑数据,通过所述原生系统查找到所述视图数据;更新模块,用于基于所述视图数据,通过原生系统反射执行所述页面更新逻辑数据,以完成对所述目标页面的更新。根据本专利技术的第三个方面,提供了一种电子设备,包括处理器和存储器;所述存储器用于存储计算机指令,所述处理器用于运行所述存储器存储的计算机指令,以实现上述的一种页面构建的方法。根据本专利技术的第四个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的一种页面构建的方法。本专利技术有益效果如下:通过服务端下发页面更新信息至应用程序,然后通过应用程序的原生系统执行所述页面更新信息以完成目标页面的构建,从而,就可以实现应用程序的热更新,而无需进行应用程序的重新发版,有助于降低开发成本。此外,通过上述方式,本实施例在保证用户体验的同时能够实现热更新,并且在本实施例中,编写业务逻辑数据的第一脚本语言可以为与应用程序的原生语言不同,就此,通过采用与应用程序的原生语言不同的第一脚本语言编写业务逻辑数据,便于扩展和推广。附图说明图1为本专利技术第一实施例一种页面构建的方法的流程框图;图2为本专利技术第二实施例一种页面构建的方法的流程框图;图3为本专利技术第三实施例一种页面构建的方法的流程框图;图4为本专利技术第四实施例一种页面构建的方法的流程框图;图5为本专利技术第五实施例一种页面构建的方法的流程框图;图6为本专利技术第六实施例一种页面构建的方法中JS端与Native端的交互简图;图7为本专利技术第五实施例一种页面构建的方法中JS本文档来自技高网...

【技术保护点】
1.一种页面构建的方法,其特征在于,应用于基于混合开发模式所开发的应用程序,所述方法包括:获取来自服务端的页面更新信息,所述页面更新信息包括:页面布局数据及通过第一脚本语言编写的业务逻辑数据;基于预置的数据传输通道,通过第一脚本语言组件将所述业务逻辑数据发送至第二脚本语言组件,其中,在混合开发模式下,所述第一脚本语言组件通过所述数据传输通道与所述第二脚本语言组件进行交互,所述第二脚本语言组件注册于原生系统;基于所述业务逻辑数据及所述页面布局数据,通过所述原生系统构建目标页面。

【技术特征摘要】
1.一种页面构建的方法,其特征在于,应用于基于混合开发模式所开发的应用程序,所述方法包括:获取来自服务端的页面更新信息,所述页面更新信息包括:页面布局数据及通过第一脚本语言编写的业务逻辑数据;基于预置的数据传输通道,通过第一脚本语言组件将所述业务逻辑数据发送至第二脚本语言组件,其中,在混合开发模式下,所述第一脚本语言组件通过所述数据传输通道与所述第二脚本语言组件进行交互,所述第二脚本语言组件注册于原生系统;基于所述业务逻辑数据及所述页面布局数据,通过所述原生系统构建目标页面。2.根据权利要求1所述的方法,其特征在于,在所述获取来自服务端的页面更新信息之后,且在所述通过第一脚本语言组件将所述业务逻辑数据发送至第二脚本语言组件之前,所述方法还包括:对所述页面更新信息是否合法进行校验;在校验通过的情况下,将所述页面更新信息存储至本地预设位置,以供所述第一脚本语言组件将所述业务逻辑数据从所述本地预设位置发送至第二脚本语言组件。3.根据权利要求1所述的方法,其特征在于,所述基于预置的数据传输通道,通过第一脚本语言组件将所述业务逻辑数据发送至第二脚本语言组件,包括:根据获取到的页面更新信息,生成所述页面更新信息的索引文件;基于所述索引文件,通过所述第一脚本语言组件查找到所述业务逻辑数据,所述第一脚本语言组件具体为:在混合开发模式下,与原生系统中用于构建页面的程序所实现的功能相对应的非原生组件;通过所述第一脚本语言组件将所述业务逻辑数据转换为所述原生系统可以执行的业务逻辑数据;将转换为所述原生系统可以执行的业务逻辑数据发送至所述第二脚本语言组件。4.根据权利要求3所述的方法,其特征在于,所述基于所述业务逻辑数据及所述页面布局数据,通过所述原生系统构建目标页面,包括:对依据所述索引文件查找到的所述页面布局数据进行解析,得到布局元素;基于所述布局元素,通过所述原生系统反射执行所述原生系统可以执行的业务逻辑数据,以生成视图数据;将所述视图数据添加到所述第二脚本语言组件中进行加载耦合,以完成所述目标页面构建。5.根据权利要求4所述的方法,其特征在于,所述原生系统可以执行的业务逻辑数据包括:页面更新逻辑数据;在所述将视图数据添加到所述第二脚本语言组件中进行加载耦合,以完成所述目标页面构建之后,所述方法还包括:基于所述页面更新逻辑数据,通过所述原生系统查找到所述视图数据;基于所述视图数据,通过原生系统反射执行所述页面更新逻辑数据,以完成对所述目标页面的更新。6.一种页面构建的装置,其特征在于,包含于基于混合开发模式所开发的应用程序,所述装置包括:获取模块,用于获取来自服务端的页面更新信息,所述页面更新信息包括:页面布局数据及通过第一脚本语言编写的业务逻辑数据;发送模块,...

【专利技术属性】
技术研发人员:谭振兴
申请(专利权)人:北京五八信息技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1