一种基于HybridApp中动态跳转Hybrid页面的方法及系统与流程

文档序号:12837138阅读:219来源:国知局
一种基于Hybrid App中动态跳转Hybrid页面的方法及系统与流程

本发明涉及计算机软件技术领域,具体涉及一种基于hybridapp中动态跳转hybrid页面的方法及系统。



背景技术:

根据不同业务需要对移动客户端中的某些页面进行替换或更新,例如,对于网上购物平台的活动页面,根据不同的节日就需要下发新活动页面(移动客户端界面的全部更换),或者有时候要动态修改某个页面的整体布局和功能。

如果切换的页面是通过原生代码开发,那么该原生页面就无法通过服务器下发及时进行更换,但是由于原生页面可能没做跳转网页的逻辑,因此导致无法切换网页。如果切换的页面是一个html5(以下简称h5)页面,虽然h5页面可以在远程服务器进行动态修改,但是使用这种方法后很多原生api(例如,陀螺仪、加速度、电话、通讯录接口)就无法得到。

hybridapp是把原生页面和h5页面进行了融合,但是加载嵌入webview的hybrid网页需要加载远程服务器的页面,因此加载时间长,加载页面的时候因为页面还没有加载完全,因此会有一个空白页面,导致用户体验较差。



技术实现要素:

有鉴于此,本发明提出一种基于hybridapp中动态跳转hybrid页面的方法及系统,以达到快速加载显示更新网页的目的,同时能够满足hybridapp的兼容性和开放性。

本发明的技术方案是提供一种基于hybridapp中动态跳转hybrid页面的方法,该方法包括:下载或更新hybridapp的hybrid模块至本地该hybridapp中;在该hybridapp中创建或更新跳转配置文件,该跳转配置文件用于记录该hybridapp中所有页面的页面属性以及设置跳转页面的页面属性;当该hybridapp中的页面发生点击操作时,当前页面根据该跳转配置文件跳转至预设页面;如果跳转的该预设页面为原生页面,那么就加载显示该预设页面;如果该预设页面是该hybrid页面,那么就根据最新版本的hybrid模块加载显示该预设页面。

可选地,更新该hybrid模块和该跳转配置文件操作包括:确认本地或远程服务器中的该hybrid模块和该跳转配置文件的版本是最新版本;如果该远程服务器中的该跳转配置文件和该hybrid模块是最新版本,那么就下载该远程服务器中的该跳转配置文件和该hybrid模块至本地该hybridapp的私有目录中;如果本地的该跳转配置文件和该hybrid模块是最新版本,那么就继续使用本地当前版本的该跳转配置文件和该hybrid模块。

可选地,更新该hybrid模块的操作之前,还包括:将本地最新版本的该hybrid模块以及对应的版本号组成一个hashmap列表,通过服务器接口请求发送至该远程服务器。

可选地,更新该hybrid模块包括:如果该远程服务器中的该hybrid模块是最新版本,那么就通过加密算法将该远程服务器中的最新版本的该hybrid模块生成压缩文件发送至本地该hybridapp的私有目录中,该hybridapp通过解压和解密之后进行覆盖更新本地该hybrid模块。

可选地,该方法还包括:根据本地最新版本的该hybrid模块加载显示该预设页面,同时利用hybrid接口调用系统的原生应用程序接口, 以兼容原生系统的自带功能。

本发明还提供一种基于hybridapp中跳转hybrid页面的系统,该系统包括:

hybrid模块配置装置,用于下载或更新hybridapp的hybrid模块至本地该hybridapp中;页面属性配置装置,用于在该hybridapp中创建或更新跳转配置文件,该跳转配置文件包括记录该hybridapp中所有页面的页面属性以及设置跳转页面的页面属性;页面加载装置,当该hybridapp中的页面发生点击操作时,当前页面根据该跳转配置文件跳转至预设页面;如果跳转的该预设页面为原生页面,那么就加载显示该预设页面;如果该预设页面是该hybrid页面,那么就根据最新版本的hybrid模块加载显示该预设页面。

可选地,该页面属性配置装置和该hybrid模块配置装置用于:确认本地或远程服务器中的该跳转配置文件和该hybrid模块的版本是最新版本;如果该远程服务器中的该跳转配置文件和该hybrid模块是最新版本,那么就下载该远程服务器中的该跳转配置文件和该hybrid模块至本地该hybridapp的私有目录中;如果本地的该跳转配置文件和该hybrid模块是最新版本,那么就继续使用本地当前版本的该跳转配置文件和该hybrid模块。

可选地,该hybrid模块配置装置还用于:将本地最新版本的该hybrid模块以及对应的版本号组成一个hashmap列表,通过服务器接口请求发送至该远程服务器。

可选地,该hybrid模块配置装置用于:如果该远程服务器中的该hybrid模块是最新版本,那么就通过加密算法将该远程服务器中的最新版本的该hybrid模块生成压缩文件发送至本地该hybridapp的私有目录中,该hybridapp通过解压和解密之后进行覆盖更新本地该hybrid模块。

可选地,该系统还包括:hybrid接口模块,用于在加载该hybrid页面之后,调用原生应用程序接口,以兼容原生系统的应用程序功能。

本发明还一种基于hybridapp的动态跳转hybrid页面的终端装置,该终端装置包括:存储器和处理器,其中,该存储器用于存储指令,该处理器用于执行该指令用于:下载或更新hybridapp的hybrid模块至本地该hybridapp中;在该hybridapp中创建或更新跳转配置文件,该跳转配置文件用于记录该hybridapp中所有页面的页面属性以及设置跳转页面的页面属性;当该hybridapp中的页面发生点击操作时,当前页面根据该跳转配置文件跳转至预设页面;如果跳转的该预设页面为原生页面,那么就加载显示该预设页面;如果该预设页面是该hybrid页面,那么就根据最新版本的hybrid模块加载显示该预设页面。

可选地,该处理器还用于:确认本地或远程服务器中的该hybrid模块和该跳转配置文件的版本是最新版本;如果该远程服务器中的该跳转配置文件和该hybrid模块是最新版本,那么就下载该远程服务器中的该跳转配置文件和该hybrid模块至本地该hybridapp的私有目录中;如果本地的该跳转配置文件和该hybrid模块是最新版本,那么就继续使用本地当前版本的该跳转配置文件和该hybrid模块。

可选地,该处理器还用于:将本地最新版本的该hybrid模块以及对应的版本号组成一个hashmap列表,通过服务器接口请求发送至该远程服务器。

通过本发明提供的基于hybridapp中跳转hybrid页面的方法及系统,不仅hybrid模块在启动时进行下载,而且可以动态选择跳转原生页面还是hybrid页面。如果选择了hybrid页面,那么在切换网页的时候,hybrid页面就在本地而不是服务器,就可以直接进行加载,这样 加载网页速度快,用户体验好,而且hybridapp可以自定义原生接口,因此兼容性和开放性更好。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1为本发明提供的一种基于hybridapp中动态跳转hybrid页面的方法流程图;

图2为本发明提供的一种基于hybridapp中动态跳转hybrid页面的系统结构图;

图3为本发明提供的一种基于hybridapp中动态跳转hybrid页面的终端装置构成图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。

本领域技术技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。

在本文中,需要理解的是,所涉及的术语中:

hybrid模块是一种利用web加载html5页面并用桥接的方式和原生客户端的原生api进行交互的模块。

如图1所示,为本发明提供的一种基于hybridapp中动态跳转hybrid页面的方法流程图,该方法包括:

步骤s101:下载或更新该hybridapp的hybrid模块至本地该hybridapp中;

步骤s102:在该hybridapp中创建或更新跳转配置文件,该跳转配置文件用于记录该hybridapp中所有页面的页面属性以及设置跳转页面的页面属性;

步骤s103:当该hybridapp中的页面发生点击操作时,当前页面根据该跳转配置文件跳转至预设页面;如果跳转的该预设页面为原生页面,那么就加载显示该预设页面;如果该预设页面是该hybrid页面,那么就根据最新版本的hybrid模块加载显示该预设页面。

可选地,更新该hybrid模块和该跳转配置文件操作包括:确认本地或远程服务器中的该hybrid模块和该跳转配置文件的版本是最新版本;如果该远程服务器中的该跳转配置文件和该hybrid模块是最新版本,那么就下载该远程服务器中的该跳转配置文件和该hybrid模块至本地该hybridapp的私有目录中;如果本地的该跳转配置文件和该hybrid模块是最新版本,那么就继续使用本地当前版本的该跳转配置文件和该hybrid模块。

可选地,更新该hybrid模块的操作之前,还包括:将本地最新版本的该hybrid模块以及对应的版本号组成一个hashmap列表,通过服务器接口请求发送至该远程服务器。

可选地,更新该hybrid模块包括:如果该远程服务器中的该hybrid模块是最新版本,那么就通过加密算法将该远程服务器中的最新版本的该hybrid模块生成压缩文件发送至本地该hybridapp的私有目录中,该hybridapp通过解压和解密之后进行覆盖更新本地该hybrid模块。

可选地,该方法还包括:根据本地最新版本的该hybrid模块加载显示该预设页面,同时利用hybrid接口调用系统的原生应用程序接口,以兼容原生系统的自带功能。

下面结合一个具体实施例对本发明进行具体描述,然而值得注意的是该具体实施例仅是为了更好地描述本发明,并不构成对本发明的不当限定。

在移动设备上启动hybridapp时,下载或者更新该hybridapp的所有hybrid模块。

如果远程服务器保存有最新版本的hybrid模块,那么就下载最新版本的hybrid模块至本地。

具体来说,更新hybrid模块的过程如下:

在启动app时,遍历本地该hybridapp中所有的hybrid模块目录,以确认本地最新版本的hybrid模块,并在与远程服务器建立连接之后,将本地当前最新版本的hybrid模块以及对应的版本号汇聚成一个hashmap列表,通过服务器接口请求发送至该远程服务器。通过对远程服务器中保存的当前该hybridapp的最新版本的hybrid模块与上传的本地当前最新版本的hybrid模块进行比较,确认更高版本的hybrid模块;如果本地当前hybrid模块与远程服务器中的hybrid模块版本相同,那么可知本地当前hybrid模块就是最新版本,那么就仍然使用本地当前版本的hybrid模块;如果远程服务器中的hybrid模块是最新版本的hybrid模块,那么就将远程服务器保存的最新版本的hybrid模块通过rsa或者其他加密算法生成压缩文件(zip)发送至本地客户端,然后进行解压和解密覆盖安装。

在下载或更新该hybridapp的所有hybrid模块之后,创建或更新该hybridapp在移动操作系统中的跳转配置文件。其中,该跳转配置 文件是一个xml文件,创建并保存于操作系统中自带的文件资源目录中。例如,对于android系统是在assets目录中加入一个配置的xml文件,该跳转配置文件记录了当前运行的该hybridapp中的所有页面的页面属性以及设置动态选择跳转至页面的页面属性,也就是说,记录了该hybridapp的每个页面是原生页面还是hybrid页面以及设置动态跳转至的页面是原生页面还是hybrid页面。值得注意的是,这个跳转配置文件不仅可以是自带,也可以是通过应用程序的下载和升级进行下发。

具体来说,更新跳转配置文件的过程如下:

在启动该hybridapp时,通过网络与该hybridapp的对应的远程服务器进行网络连接,由于该远程服务器保存有不断更新版本的跳转配置文件,因此可以对本地该hybridapp中的当前版本的跳转配置文件和远程服务器中保存的跳转配置文件进行校验。如果远程服务器中保存有比当前版本更高版本的跳转配置文件,那么就下载该最新版本的该hybridapp的跳转配置文件并,然后覆盖当前本地的跳转配置文件;如果本地的跳转配置文件与远程服务器保存的跳转配置文件的版本相同,那么就继续使用本地当前版本的跳转配置文件。由于更新的过程是在后台进行,因此不影响应用程序的正常加载进程。

在对该hybridapp的页面进行点击操作时,根据更新的跳转配置文件从当前网页跳转至该跳转配置文件已预先设置的页面(以下简称预设页面);如果跳转至原生页面,那么就按照原生代码的逻辑传递数据和跳转,然后加载显示该预设页面;如果跳转至hybrid页面,那么就根据更新后的hybrid模块加载显示该预设页面,同时调用移动操作系统的原生应用程序接口。特别的是,该hybrid接口模块是通过js调用原生应用程序接口(以下简称原生api)来实现,并且系统自带的浏览器引擎会提供这样的接口,目的是为hybrid提供类似原生的调用原生api的功能,达到比h5页面更好的体验效果。由于该hybrid接口模块是本领域普通技术人员能够实现的,故不在此赘述。

如图2所示,为本发明还提供的一种基于hybridapp中动态跳转hybrid页面的系统结构图。该系统包括:

hybrid模块配置装置21,用于下载或更新hybridapp的hybrid模块至本地该hybridapp中;页面属性配置装置22,用于在该hybridapp中创建或更新跳转配置文件,该跳转配置文件包括记录该hybridapp中所有页面的页面属性以及设置跳转页面的页面属性;页面加载装置23,当该hybridapp中的页面发生点击操作时,当前页面根据该跳转配置文件跳转至预设页面;如果跳转的该预设页面为原生页面,那么就加载显示该预设页面;如果该预设页面是该hybrid页面,那么就根据最新版本的hybrid模块加载显示该预设页面。

可选地,该页面属性配置装置22和该hybrid模块配置装置21用于:确认本地或远程服务器中的该跳转配置文件和该hybrid模块的版本是最新版本;如果该远程服务器中的该跳转配置文件和该hybrid模块是最新版本,那么就下载该远程服务器中的该跳转配置文件和该hybrid模块至本地该hybridapp的私有目录中;如果本地的该跳转配置文件和该hybrid模块是最新版本,那么就继续使用本地当前版本的该跳转配置文件和该hybrid模块。

可选地,该hybrid模块配置装置21还用于:将本地最新版本的该hybrid模块以及对应的版本号组成一个hashmap列表,通过服务器接口请求发送至该远程服务器。

可选地,该hybrid模块配置装置21用于:如果该远程服务器中的该hybrid模块是最新版本,那么就通过加密算法将该远程服务器中的最新版本的该hybrid模块生成压缩文件发送至本地该hybridapp的私有目录中,该hybridapp通过解压和解密之后进行覆盖更新本地该hybrid模块。

可选地,该系统还包括:hybrid接口模块24,用于在加载该hybrid页面之后,调用原生应用程序接口,以兼容原生系统的应用程序功能。

由于本发明提供的基于hybridapp中跳转hybrid页面的系统是上述方法对应的装置,故不在此赘述。

图3为本发明提供的一种基于hybridapp中动态跳转hybrid页面的终端装置构成图。

本发明还一种基于hybridapp的动态跳转hybrid页面的终端装置3,该终端装置3包括:存储器31和处理器32,其中,该存储器31用于存储指令,该处理器32用于执行该指令用于:下载或更新hybridapp的hybrid模块至本地该hybridapp中;在该hybridapp中创建或更新跳转配置文件,该跳转配置文件用于记录该hybridapp中所有页面的页面属性以及设置跳转页面的页面属性;当该hybridapp中的页面发生点击操作时,当前页面根据该跳转配置文件跳转至预设页面;如果跳转的该预设页面为原生页面,那么就加载显示该预设页面;如果该预设页面是该hybrid页面,那么就根据最新版本的hybrid模块加载显示该预设页面。

可选地,该处理器32还用于:确认本地或远程服务器中的该hybrid模块和该跳转配置文件的版本是最新版本;如果该远程服务器中的该跳转配置文件和该hybrid模块是最新版本,那么就下载该远程服务器中的该跳转配置文件和该hybrid模块至本地该hybridapp的私有目录中;如果本地的该跳转配置文件和该hybrid模块是最新版本,那么就继续使用本地当前版本的该跳转配置文件和该hybrid模块。

可选地,该处理器32还用于:将本地最新版本的该hybrid模块以及对应的版本号组成一个hashmap列表,通过服务器接口请求发送至该远程服务器。

通过本发明提供的在hybridapp中跳转hybrid页面的系统,这样每次点击某个hybrid模块,根据配置文件跳转到原生页面或者hybrid页面,如果跳转到的是hybrid页面,那么根据具体的hybrid模块名,找到最新版本的hybrid模块,并根据最新的本地hybrid模块页面加载起来。这样就是加载本地文件,用户体验比加载远程网页快,还能调用原生api。

通过本发明提供的基于hybridapp中跳转hybrid页面的方法及系统,不仅hybrid页面在启动时进行下载(文件较小),而且可以动态选择跳转原生页面还是hybrid页面。如果选择了hybrid页面,那么在切换网页的时候,hybrid模块在本地而不是服务器,就可以直接进行加载,这样加载网页速度快,用户体验好,而且hybridapp可以自定义原生接口,因此兼容性和开放性更好。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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