一种客户端页面显示方法、装置及系统的制作方法

文档序号:9646555阅读:192来源:国知局
一种客户端页面显示方法、装置及系统的制作方法
【技术领域】
[0001] 本申请涉及移动互联网技术领域,具体涉及一种客户端页面显示方法和装置。本 申请同时涉及一种更新客户端页面的方法和装置,以及一种客户端页面显示系统。
【背景技术】
[0002] 随着移动互联网技术不断发展,企业需要选择一个为将来而使用的能够满足多种 不同层面需求的移动开发模式。目前,移动开发模式包括原生开发模式、Web开发模式和混 合开发模式。其中,混合模式移动应用(HybridApp)是同时采用网页语言与程序语言进行 开发,通过不同的应用商店进行打包与分发,应用的特性更接近原生应用(NativeApp)而 且又区别于Web应用(WebApp)。但是,在HybridApp开发过程中,由于同时使用了网页语 言,所以开发成本与难度大大降低。也就是说,HybridApp兼具了NativeApp与WebApp 两者的诸多优点。目前已经有众多HybridApp开发成功应用,比如百度、网易、街旁等知名 移动应用,都是采用HybridApp开发模式。
[0003] 在HybridApp中,客户端对页面进行缓存管理,以便提高页面显示速度,从而增强 用户体验。一个页面包括页面结构和动态数据两部分,传统的,对页面进行缓存是对页面的 整体进行缓存,并不区分页面结构和动态数据。当客户端显示页面时,客户端是通过一次 额外的请求服务器端,返回是否需要更新页面,如果服务器端回传需要更新的信号,客户端 再次请求服务器端返回整个页面的数据,根据返回的整个页面的数据,显示页面,并且更新 页面的缓存;如果不需要更新,则继续使用原有的缓存在客户端的整个页面的数据,显示页 面。采用这种页面显示的方式,存在以下问题:
[0004] 1)客户端页面缓存重复使用率较低
[0005] 由于HybridApp有大量页面信息需要从服务器端动态获取,传统的方式将整个页 面缓存在客户端,这个缓存重复使用率较低,因为一旦页面结构和动态数据其中一个改动, 就需要将整个页面重新从服务器端请求。
[0006] 2)客户端性能消耗大
[0007] 由于频繁的从服务器端请求页面信息,客户端就要频繁的重新将页面转换成客户 端本地对象,再将本地对象渲染到页面上,这个过程会消耗客户端大量的性能。
[0008] 3)消耗大量网络流量、用户体验差
[0009] 由于频繁的从服务器端请求页面信息,会给用户带来大量的流量费用,甚至在网 络状况不好的情况下(移动设备网络情况通常会在wifi、3G、2G、GPRS情况下切换),会带来 交互阻塞、画面不流畅等不良体验。
[0010] 因此,现有技术无法对动态数据和页面结构分别进行更新,而只能对整个页面进 行更新,由此带来客户端页面缓存重复使用率较低、客户端性能消耗大以及消耗大量网络 流量、用户体验差的问题。

【发明内容】

[0011] 本申请提供一种客户端页面显示方法和装置,以解决现有技术无法对动态数据和 页面结构分别进行更新的问题。本申请另外提供一种更新客户端页面的方法和装置,以及 一种客户端页面显示系统。
[0012] 本申请提供一种客户端页面显示方法,用于混合模式移动应用程序,包括:
[0013] 接收用户发送的页面访问请求;
[0014] 根据所述页面访问请求,获取所述页面的页面标识;
[0015] 根据所述页面标识,获取本地预存的所述页面的动态数据的验证标识和页面结构 的验证标识;
[0016] 将所述页面标识、所述动态数据的验证标识和页面结构的验证标识发送到服务器 端,向所述服务器端请求所述页面的动态数据和页面结构两部分中的更新部分;
[0017] 接收服务器端回送的应答;
[0018] 由所述服务器端回送的应答和本地预存的页面部分中,选择当前版本最新的动态 数据和页面结构,生成并渲染所述页面;
[0019] 其中,所述验证标识用于表征动态数据和页面结构的更新状况。
[0020] 可选的,所述本地预存的所述页面存储在客户端缓存区域。
[0021] 可选的,所述本地预存的所述页面包括:所述页面的动态数据和所述动态数据的 验证标识,以及所述页面结构的本地对象和所述页面结构的验证标识,所述页面的动态数 据、所述动态数据的验证标识、所述页面结构的本地对象以及所述页面结构的验证标识分 离存储。
[0022] 可选的,所述生成并渲染所述页面采用以下规则之一:
[0023] 若所述应答为无更新应答,则获取所述本地预存的所述页面中的所述页面结构的 本地对象和所述动态数据,将所述本地预存的所述动态数据中的所有数据项替换到所述本 地预存的所述页面结构的本地对象,渲染所述本地对象;
[0024] 若所述应答只包括所述动态数据,则获取所述本地预存的所述页面中的所述页面 结构的本地对象,将所述服务器端的所述动态数据中的所有数据项替换到所述本地预存的 所述页面结构的本地对象,渲染所述本地对象;
[0025] 若所述应答只包括所述页面结构,则将所述服务器端的所述页面结构渲染成本地 对象,获取所述本地预存的所述页面中的所述动态数据,将所述本地预存的所述动态数据 中的所有数据项替换到所述本地对象,渲染所述本地对象;
[0026] 若所述应答包括所述动态数据和所述页面结构,则将所述服务器端的所述页面结 构渲染成本地对象,将所述服务器端的所述动态数据中的所有数据项替换到所述本地对 象,渲染所述本地对象。
[0027] 可选的,还包括:根据所述服务器端回送的应答,更新所述本地预存的所述页面。
[0028] 可选的,所述更新所述本地预存的所述页面采用以下规则之一:
[0029] 若所述服务器端回送的应答是否包括所述动态数据,则将所述本地预存的所述页 面的所述动态数据和所述动态数据的验证标识替换为所述服务器端的所述动态数据和所 述动态数据的验证标识;
[0030] 若所述服务器端回送的应答是否包括所述页面结构,则将所述本地预存的所述页 面的所述页面结构的本地对象和所述页面结构的验证标识替换为所述服务器端的所述页 面结构的本地对象和所述页面结构的验证标识。
[0031] 相应的,本申请还提供一种客户端页面显示装置,用于混合模式移动应用程序,包 括:
[0032] 第一接收单元,用于接收用户发送的页面访问请求;
[0033] 第一获取单元,用于根据所述页面访问请求,获取所述页面的页面标识;
[0034] 第二获取单元,用于根据所述页面标识,获取本地预存的所述页面的动态数据的 验证标识和页面结构的验证标识;
[0035] 第一发送单元,用于将所述页面标识、所述动态数据的验证标识和页面结构的验 证标识发送到服务器端,向所述服务器端请求所述页面的动态数据和页面结构两部分中的 更新部分;
[0036] 第二接收单元,用于接收服务器端回送的应答;
[0037] 生成渲染单元,用于由所述服务器端回送的应答和本地预存的页面部分中,选择 当前版本最新的动态数据和页面结构,生成并渲染所述页面;
[0038] 其中,所述验证标识用于表征动态数据和页面结构的更新状况。
[0039] 可选的,所述本地预存的所述页面存储在客户端缓存区域。
[0040] 可选的,所述本地预存的所述页面包括:所述页面的动态数据和所述动态数据的 验证标识,以及所述页面结构的本地对象和所述页面结构的验证标识,所述页面的动态数 据、所述动态数据的验证标识、所述页面结构的本地对象以及所述页面结构的验证标识分 离存储。
[0041] 可选的,所述生成并渲染所述页面采用以下规则之一:
[0042] 若所述应答为无更新应答,则获取所述本地预存的所述页面中的所述页面结构的 本地对象和所述动态数据,将所述本地预存的所述动态数据中的所有数据项替换到所述本 地预存的所述页面结构的本地对象,渲染所述本地对象;
[0043] 若所述应答只包括所述动态数据,则获取所述本地预存的所述页面中的所述页面 结构的本地对象,将所述服务器端的所述动态数据中的所有数据项替换到所述本地预存的 所述页面结构的本地对象,渲染所述本地对象;
[0044] 若所述应答只包括所述页面结构,则将所述服务器端的所述页面结构渲染成本地 对象,获取所述本地预存的所述页面中的所述动态数据,将所述本地预存的所述动态数据 中的所有数据项替换到所述本地对象,渲染所述本地对象;
[0045] 若所述应答包括所述动态数据和所述页面结构,则将所述服务器端的所述页面结 构渲染成本地对象,将所述服务器端的所述动态数据中的所有数据项替换到所述本地对 象,渲染所述本地对象。
[0046] 可选的,所述装置还包括:
[0047] 更新本地存储单元,用于根据所述服务器端回送的应答,更新所述本地预存的所 述页面。
[0048] 可选的,所述更新所述本地预存的所述页面采用以下规则之一:
[0049] 若所述服务器端回送的应答是否包括所述动态数据,则将所述本地预存的所述页 面的所述动态数据和所述动态数据的验证标识替换为所述服务器端的所述动态数据和所 述动态数据的验证标识;
[0050] 若所述服务器端回送的应答是否包括所述页面结构,则将所述本地预存的所述页 面的所述页面结构的本地对象和所述页面结构的验证标识替换为所述服务器端的所述页 面结构的本地对象和所述页面结构的验证标识。
[0051] 此外,本申请还提供一种更新客户端页面的方
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1