CN106293311A - 基于移动应用的页面显示方法、客户端、服务器及平台 - Google Patents
基于移动应用的页面显示方法、客户端、服务器及平台 Download PDFInfo
- Publication number
- CN106293311A CN106293311A CN201510276505.5A CN201510276505A CN106293311A CN 106293311 A CN106293311 A CN 106293311A CN 201510276505 A CN201510276505 A CN 201510276505A CN 106293311 A CN106293311 A CN 106293311A
- Authority
- CN
- China
- Prior art keywords
- description file
- template
- request
- client
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例提供了一种基于移动应用的页面显示方法、客户端、服务器及平台,其中所述方法包括:当客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;接收服务器返回的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象,所述服务器用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,并将所述描述文件返回所述客户端;以及分别基于所述描述文件对对应的区域对象进行渲染。本申请可以提升页面渲染速度。
Description
技术领域
本申请涉及页面渲染的技术领域,特别是涉及一种基于移动应用的页面显示方法、一种基于移动应用的页面显示的客户端、一种基于移动应用的页面显示的服务器,以及一种基于移动应用的页面显示平台。
背景技术
移动应用产品往往要考虑多个平台的支持,而多平台的支持往往因为不同平台技术的迥异需要建立不同的技术团队,开发周期长,成本高,后期维护升级困难。在现有技术中,为了进一步简化移动应用的开发编译过程,跨平台开发解决方案成为了大家关注的热点,iMAG(IntelligentMobile Application Gateway,智能移动应用网关)则是其中一种解决方案。
作为移动设备和应用之间的一个中间层,iMAG屏蔽了不同手机操作系统之间的差异,使得企业和开发者可以用一种高效的方式来构建自己的移动应用。iMAG采用XML+JavaScript(配置+脚本)的开发方式,它的原理是将符合iMAG开发规范的XML文件解释成对应的原生应用代码来执行,原生跨平台开发,iMAG App具有和Native App相同的性能和用户体验,因此相比PhoneGap、JQuery Mobile等Web开发框架,iMAG适用于对性能要求较高的情况。
然而,iMAG的语法是基于控件级别,所以到达客户端进行native解析时是一次性解析,数据一次性填充,展现效率低下,性能不能达到最优化。同时开发xml时需要专业的开发人员来写xml或自己熟练掌握语法。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:如何提出一种基于移动应用的页面显示机制,用以提高页面显示效率,提示系统性能。
发明内容
本申请实施例所要解决的技术问题是提供一种基于移动应用的页面显示方法,用以提高页面显示效率,提升系统性能。
相应的,本申请实施例还提供了一种基于移动应用的页面显示的客户端、一种基于移动应用的页面显示的服务器,以及一种基于移动应用的页面显示平台,用以保证上述方法的实现及应用。
为了解决上述问题,本申请实施例公开了一种基于移动应用的页面显示方法,所述的方法包括:
当客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;
接收服务器返回的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象,所述服务器用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,并将所述描述文件返回所述客户端;以及
分别基于所述描述文件对对应的区域对象进行渲染。
优选地,所述分别基于所述描述文件对对应的区域对象进行渲染的步骤包括:
解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码;
基于所述第一本地代码,生成第一填充数据获取请求,并将所述第一填充数据获取请求发送至服务器;
接收服务器返回的与所述第一填充数据获取请求对应的第一填充数据;
采用所述第一填充数据填充对应的区域对象。
优选地,所述描述文件具有对应的描述文件模板,在所述当客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器的步骤之前,所述方法还包括:
在所述客户端启动时,生成模板数据获取请求,并将所述模板数据获取请求发送至服务器;
接收服务器针对所述模板数据获取请求返回的所有的描述文件模板。
优选地,所述分别基于所述描述文件对对应的区域对象进行渲染的步骤包括:
分别获取与所述描述文件匹配的描述文件模板;
将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据;
解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码;
基于所述第二本地代码,生成第二填充数据获取请求,并将所述第二填充数据获取请求发送至服务器;
接收服务器返回的与所述第二填充数据获取请求对应的第二填充数据;
采用所述第二填充数据填充对应的区域对象。
优选地,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述分别获取与所述描述文件匹配的描述文件模板的步骤包括:
依据所述第一对象标识,遍历所有的描述文件模板;
将与所述第一对象标识相同的第二对象标识对应的描述文件模板,作为与所述描述文件匹配的描述文件模板。
优选地,所述分别获取与所述描述文件匹配的描述文件模板的步骤还包括:
若在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识,则基于所述第一对象标识生成模板请求;
将所述模板请求发送至服务器;
接收服务器返回的与所述第一对象标识对应的描述文件模板。
优选地,所述方法还包括:
接收服务器发送的一个或多个区域对象对应的更新的描述文件;将所述更新的描述文件替换对应区域对象中原有的描述文件。
优选地,所述描述文件采用可扩展标记语言XML或JSON语法描述。
本申请实施例还公开了一种基于移动应用的页面显示方法,所述方法包括:
服务器接收客户端发送的页面数据获取请求,其中,所述页面数据获取请求包括页面标识,所述页面数据获取请求为所述客户端检测到针对移动应用的指定操作时,生成的与所述指定操作对应的请求;
获取预先存储的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象;以及
将所述描述文件返回所述客户端,其中,所述客户端用于分别基于所述描述文件对对应的区域对象进行渲染。
优选地,所述方法还包括:
接收客户端发送的第一填充数据获取请求,所述第一填充数据获取请求为客户端解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码后,基于所述第一本地代码生成的请求;
获取与所述第一填充数据获取请求对应的第一填充数据,并将所述第一填充数据发送至客户端,所述客户端用于采用所述第一填充数据填充对应的区域对象。
优选地,所述描述文件具有对应的描述文件模板,在所述服务器接收客户端发送的页面数据获取请求的步骤之前,所述方法还包括:
接收客户端发送的模板数据获取请求,所述模板数据获取请求为客户端启动时生成的请求;
基于所述模板数据获取请求,向客户端返回所有的描述文件模板。
优选地,所述方法还包括:
接收客户端发送的第二填充数据获取请求,所述第二填充数据获取请求为客户端分别获取与所述描述文件匹配的描述文件模板,以及,将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据,并解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码后,基于所述第二本地代码生成的请求;
获取与所述第二填充数据获取请求对应的第二填充数据,并将所述第二填充数据发送至客户端,所述客户端用于采用所述第二填充数据填充对应的区域对象。
优选地,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述方法还包括:
接收客户端发送的模板请求,所述模板请求为所述客户端判定在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识时生成的请求;
基于所述模板请求,获取与所述第一对象标识对应的描述文件模板并发送至客户端。
优选地,所述方法还包括:
当检测到一个或多个区域对象对应的描述文件更新时,将所述更新的描述文件发送至客户端,所述客户端用于将所述更新的描述文件替换对应区域对象中原有的描述文件。。
优选地,所述描述文件采用可扩展标记语言XML或JSON语法描述。
本申请实施例还公开了一种基于移动应用的页面显示客户端,所述的客户端包括:
页面数据请求生成模块,用于在客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;
描述文件接收模块,用于接收服务器返回的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象,所述服务器用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,并将所述描述文件返回所述客户端;以及
渲染模块,用于分别基于所述描述文件对对应的区域对象进行渲染。
优选地,所述渲染模块包括:
第一解析子模块,用于解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码;
第一填充数据获取子模块,用于基于所述第一本地代码,生成第一填充数据获取请求,并将所述第一填充数据获取请求发送至服务器;
第一填充数据接收子模块,用于接收服务器返回的与所述第一填充数据获取请求对应的第一填充数据;
第一填充子模块,用于采用所述第一填充数据填充对应的区域对象。
优选地,所述描述文件具有对应的描述文件模板,所述客户端还包括:
模板数据获取模块,用于在所述客户端启动时,生成模板数据获取请求,并将所述模板数据获取请求发送至服务器;
模板数据接收模块,用于接收服务器针对所述模板数据获取请求返回的所有的描述文件模板。
优选地,所述渲染模块包括:
匹配子模块,用于分别获取与所述描述文件匹配的描述文件模板;
组织子模块,用于将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据;
第二解析子模块,用于解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码;
第二填充数据获取子模块,用于基于所述第二本地代码,生成第二填充数据获取请求,并将所述第二填充数据获取请求发送至服务器;
第二填充数据接收子模块,用于接收服务器返回的与所述第二填充数据获取请求对应的第二填充数据;
第二填充子模块,用于采用所述第二填充数据填充对应的区域对象。
优选地,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述匹配子模块包括:
遍历单元,用于依据所述第一对象标识,遍历所有的描述文件模板;
匹配单元,用于将与所述第一对象标识相同的第二对象标识对应的描述文件模板,作为与所述描述文件匹配的描述文件模板。
优选地,所述匹配子模块还包括:
模板请求单元,用于在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识,则基于所述第一对象标识生成模板请求;
请求发送单元,用于将所述模板请求发送至服务器;
模板接收单元,用于接收服务器返回的与所述第一对象标识对应的描述文件模板。
优选地,所述客户端还包括:
更新模板接收模块,用于接收服务器发送的一个或多个区域对象对应的更新的描述文件;
替换模块,用于将所述更新的描述文件替换对应区域对象中原有的描述文件。
优选地,所述描述文件采用可扩展标记语言XML或JSON语法描述。
本申请实施例还公开了一种基于移动应用的页面显示服务器,所述服务器包括:
页面数据请求接收模块,用于接收客户端发送的页面数据获取请求,其中,所述页面数据获取请求包括页面标识,所述页面数据获取请求为所述客户端检测到针对移动应用的指定操作时,生成的与所述指定操作对应的请求;
描述文件获取模块,用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象;以及
描述文件返回模块,用于将所述描述文件返回所述客户端,其中,所述客户端用于分别基于所述描述文件对对应的区域对象进行渲染。
优选地,所述服务器还包括:
第一填充请求接收模块,用于接收客户端发送的第一填充数据获取请求,所述第一填充数据获取请求为客户端解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码后,基于所述第一本地代码生成的请求;
第一填充数据获取模块,用于获取与所述第一填充数据获取请求对应的第一填充数据,并将所述第一填充数据发送至客户端,所述客户端用于采用所述第一填充数据填充对应的区域对象。
优选地,所述描述文件具有对应的描述文件模板,所述服务器还包括:
模板数据请求模块,用于接收客户端发送的模板数据获取请求,所述模板数据获取请求为客户端启动时生成的请求;
模板数据返回模块,用于基于所述模板数据获取请求,向客户端返回所有的描述文件模板。
优选地,所述服务器还包括:
第二填充请求接收模块,用于接收客户端发送的第二填充数据获取请求,所述第二填充数据获取请求为客户端分别获取与所述描述文件匹配的描述文件模板,以及,将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据,并解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码后,基于所述第二本地代码生成的请求;
第二填充数据获取模块,用于获取与所述第二填充数据获取请求对应的第二填充数据,并将所述第二填充数据发送至客户端,所述客户端用于采用所述第二填充数据填充对应的区域对象。
优选地,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述服务器还包括:
模板请求接收模块,用于接收客户端发送的模板请求,所述模板请求为所述客户端判定在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识时生成的请求;
模板数据发送模块,用于基于所述模板请求,获取与所述第一对象标识对应的描述文件模板并发送至客户端。
优选地,所述服务器还包括:
更新检测模块,用于在检测到一个或多个区域对象对应的描述文件更新时,将所述更新的描述文件发送至客户端,所述客户端用于将所述更新的描述文件替换对应区域对象中原有的描述文件。
优选地,所述描述文件采用可扩展标记语言XML或JSON语法描述。
本申请实施例还公开了一种基于移动应用的页面显示平台,所述平台包括客户端与服务器,其中,
所述客户端包括:
页面数据请求生成模块,用于在客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;
描述文件接收模块,用于接收服务器返回的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象;以及
渲染模块,用于分别基于所述描述文件对对应的区域对象进行渲染;
所述服务器包括:
页面数据请求接收模块,用于接收客户端发送的页面数据获取请求;
描述文件获取模块,用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件;以及
描述文件返回模块,用于将所述描述文件返回所述客户端。
与背景技术相比,本申请实施例包括以下优点:
第一,本申请实施例将移动应用的页面划分成多个区域对象,并逐个区域对象进行页面渲染,相比于一次性渲染整个页面,渲染速度得到了大大的提升,进而提升了用户体验。
第二,在本申请实施例中,客户端以区域对象为单位向服务器请求填充数据(第一填充数据或第二填充数据),则服务器传递到客户端的也是一个区域对象的填充数据,相比于传递整个页面的填充数据,大大的减少了数据传递的数据量,加快传输速度,进而提升了客户端渲染的效率。
第三,本申请实施例在移动应用的页面更新时,只需要传递更新部分对应的区域对象的文件描述至客户端,相比于传递整个页面的内容,大大的减少了数据量的传输,节省带宽资源,提高服务器的性能。
第四,应用于本申请实施例,开发人员可以提前创建多种描述文件模板,则使用模板的人可以直接使用现成的描述文件模板,无需再编写模板,大大的降低使用门槛,提高移动应用开发的效率。
附图说明
图1是本申请的一种基于移动应用的页面显示方法实施例一的步骤流程图;
图2是本申请的一种基于移动应用的页面显示方法实施例二的步骤流程图;
图3是本申请的一种基于移动应用的页面显示方法实施例三的步骤流程图;
图4是本申请的一种基于移动应用的页面显示客户端实施例的结构框图;
图5是本申请一种基于移动应用的页面显示服务器实施例的结构框图;以及
图6是本申请一种基于移动应用的页面显示平台实施例的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
参照图1,示出了本申请的一种基于移动应用的页面显示方法实施例一的步骤流程图,其中,该移动应用基于移动应用开发框架进行开发。该移动应用开发框架为跨平台的开发框架,可以应用于不同的移动端操作系统中,例如,android操作系统、ios操作系统、wap操作系统,等等。当然,本申请实施例并不限于上述三种操作系统,也可以为其他移动端的操作系统,本申请对此无需加以限制。
本申请实施例可以将移动应用开发框架可视化为一种描述语言描述的描述文件,描述文件可以采用可扩展标记语言XML或JSON语法描述。具体的,该描述文件可以支持控件(label)描述(描述区域对象里有多少控件)、布局(layout)描述(描述控件如何布局)、事件(event)描述(描述控件绑定的事件)等,其中:
label控件描述可以示例为:
布局描述可以示例为:代表使用的是linearLayout(横竖布局),
事件描述可以示例为:
在具体实现中,开发人员或其他使用人员可以采用上述移动应用开发框架进行跨平台的移动应用开发,应用于本申请实施例,开发人员或其他使用人员可以将每个移动应用的页面拆分成多个区域对象(即将页面进行分层),每个区域对象包括多个控件,每个区域对象可以采用对应的描述文件进行描述。具体的,开发人员可以采用本申请实施例提供的移动应用开发框架,基于该框架提供的描述文件创建区域对象的描述文件,组合多个区域对象,得到移动应用的页面。
本申请实施例采用描述文件来创建移动应用的页面,如果若干个页面存在相同的显示内容,则该若干页面可以复用该相同显示内容对应的区域对象的描述文件,大大的提高了区域对象的复用性。
在本申请实施例中,所述基于移动应用的页面显示方法100具体可以包括如下步骤:
步骤101,当客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,其中,所述页面数据获取请求包括页面标识;
具体的,客户端为移动应用的客户端,当客户端检测到针对移动应用的指定操作时,生成与该指定操作对应的页面数据获取请求,以请求服务器获得对应的页面的页面数据。
作为本申请实施例的一种优选示例,指定操作可以为用户对移动应用的开启操作、页面跳转操作、刷新操作,等等。当客户端识别到指定操作以后,可以获得该指定操作对应的页面标识,并基于页面标识生成页面数据获取请求,例如,当用户执行开启操作时,对应的页面标识可以为移动应用的启动页面标识;当用户点击页面上某个控件时,对应的页面标识可以为跳转到某个页面的页面标识。
在具体实现中,指定操作对应的页面标识的获取方式可以为,在客户端本地存储指定操作与页面标识的对应关系,当客户端识别到指定操作后,即可以从对应关系中获得对应的页面标识;或者,指定操作对应的页面标识的获取方式还可以为,客户端根据识别的指定操作生成请求发送至服务器,以向服务器获得该指定操作对应的页面标识,当然,本申请实施例并不限于上述两种方式,本申请实施例对获得页面标识的方式无需加以限定。
客户端生成页面数据获取请求以后,可以将该页面数据获取请求发送至服务器,以请求该页面标识对应的页面数据。
步骤102,服务器基于所述页面数据获取请求,获取预先存储的与所述页面标识对应的多个区域对象的描述文件,并将所述描述文件返回所述客户端;
应用于本申请实施例,页面标识对应的页面可以包括多个区域对象,每个区域对象采用对应的描述文件描述,在服务器中存储有页面标识与其对应的多个区域对象的描述文件的关联关系,当服务器接收到客户端发送的页面数据获取请求以后,服务器可以在数据库中查找该页面数据获取请求中携带的页面标识,若查找成功,则将该页面标识对应的多个区域对象的描述文件返回客户端。若没有查找成功,则服务器可以向客户端返回查找失败的提示。
步骤103,客户端分别基于所述描述文件对对应的区域对象进行渲染;
客户端接收到服务器返回的多个区域对象的描述文件以后,可以基于每个描述文件,对对应的区域对象进行渲染,以显示该区域对象中所包含的控件内容。
在本申请实施例的一种优选实施例中,步骤103可以包括如下子步骤:
子步骤S11,解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码;
在实际应用中,描述文件可以包括描述文件模板与描述文件实例,其中,描述文件模板采用XML/JSON描述,用于描述区域对象由哪些控件组成;描述文件实例是描述文件模板对应的变量值,该描述文件实例中具有描述文件模板的指向信息,例如,描述文件实例中包括所对应的描述文件模板的模板标识;或者,描述文件实例与描述文件模板可以以相同的对象标识进行关联。
服务器一次性的将页面的描述文件模板与描述文件实例发送至客户端,客户端接收到描述文件以后,将描述文件进行解析。
为了节省解析时间,客户端可以一次性的对页面中的所有描述文件进行解析,解析后可以获得与移动应用所在操作系统所适配的第一本地代码(native代码)。例如,在Android和iOS系统上会将描述文件(XML或JSON)解析成各自的本地代码,比如在Android上label会解析成原生的TextView,而在iOS上则会解析成对应的UILabel。
子步骤S12,基于所述第一本地代码,生成第一填充数据获取请求,并将所述第一填充数据获取请求发送至服务器;
子步骤S13,接收服务器返回的与所述第一填充数据获取请求对应的第一填充数据;
第一本地代码中可以包括调用第一填充数据的API(ApplicationProgramming Interface,应用程序编程接口),基于该API,客户端可以生成第一填充数据获取请求,以通过该API向服务器中获得第一填充数据。
子步骤S14,采用所述第一填充数据填充对应的区域对象。
客户端获得填充数据以后,可以将填充数据填充在对应的区域对象中,以完成区域对象的渲染。
在本申请实施例的另一种优选实施例中,描述文件具有对应的描述文件模板,此时,描述文件与上例的描述文件实例等同,在执行步骤101之前,本申请实施例可以首先从服务器中同步所有的描述文件模板,具体的,本申请可以在客户端启动时,生成模板数据获取请求,并将模板数据获取请求发送至服务器,以请求同步所有的描述文件模板;服务器基于模板数据获取请求,向客户端返回所有的描述文件模板,客户端接收到描述文件模板后可以将该描述文件模板存储在本地缓存中。本申请实施例通过一次性的从服务器中拉取所有的描述文件模板,免去客户端每次需要描述文件模板时都向服务器发出请求的麻烦,节省了交互次数,节约带宽资源,提高了客户端与服务器的性能。
则步骤103可以包括如下子步骤:
子步骤S21,分别获取与所述描述文件匹配的描述文件模板;
在一种实施方式中,描述文件可以包括第一对象标识,描述文件模板可以包括第二对象标识,子步骤S21可以进一步包括如下子步骤:
子步骤S211,依据所述第一对象标识,遍历所有的描述文件模板;
子步骤S212,将与所述第一对象标识相同的第二对象标识对应的描述文件模板,作为与所述描述文件匹配的描述文件模板。
具体而言,客户端可以依据描述文件的第一对象标识,遍历所有描述文件模板中的第二对象标识,以在所有文件模板中查找与第一对象标识相同的第二对象标识,若查找成功,则将与第一对象标识相同的第二对象标识对应的描述文件模板作为与该描述文件匹配的描述文件模板。
另一方面,若上述查找没有查找成功,即在所述描述文件模板中不存在与第一对象标识相同的第二对象标识,本申请实施例则可以基于第一对象标识生成模板请求,并将模板请求发送至服务器,以请求服务器获得第一对象标识对应的描述文件模板。服务器接收到模板请求以后,基于该模板请求,获取与第一对象标识对应的描述文件模板并发送至客户端。
子步骤S22,将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据;
由于描述文件模板定义的是参数变量,描述文件实例定义的是变量的数值,因此,在完成描述文件模板与描述文件实例的匹配以后,客户端可以将相匹配的描述文件模板与描述文件实例进行合并,即将描述文件实例填充进描述文件模板中,组织成区域对象的描述文件数据。
子步骤S23,解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码;
在获得区域对象的描述文件数据以后,可以对该描述文件数据进行解析,得到该区域对象的与移动应用所在操作系统所适配的第二本地代码(native代码)。
为了节省解析时间,本申请实施例可以在获得每个区域对象的描述文件数据之后,将所有的区域对象的描述文件数据进行合并,得到整个页面的描述文件数据(page.json/page.xml),进而基于整个页面的描述文件数据进行一次性解析,得到整个页面的native代码。
子步骤S24,基于所述第二本地代码,生成第二填充数据获取请求,并将所述第二填充数据获取请求发送至服务器;
子步骤S25,接收服务器返回的与所述第二填充数据获取请求对应的第二填充数据;
第二本地代码中可以包括调用第二填充数据的API,基于该API,客户端可以生成第二填充数据获取请求,以通过该API向服务器中获得对应区域对象的第二填充数据。
在本申请实施例中,客户端以区域对象为单位向服务器请求填充数据(第一填充数据或第二填充数据),则服务器传递到客户端的也是一个区域对象的填充数据,相比于传递整个页面的填充数据,大大的减少了数据传递的数据量,加快传输速度,进而提升了客户端渲染的效率。
子步骤S26,采用所述第二填充数据填充对应的区域对象。
客户端获得第二填充数据以后,可以将第二填充数据填充在对应的区域对象中,以完成区域对象的渲染。
本申请实施例逐个区域对象进行页面渲染,相比于一次性渲染整个页面,渲染速度得到了大大的提升,进而提升了用户体验。
在另一种实施方式中,若填充数据(第一填充数据或第二填充数据)为初始化数据,则在步骤102中服务器返回描述文件时,可以同时返回预先存储的与区域对象关联的初始化数据,则在步骤103中,将描述文件解析成native代码后,可以直接基于native代码和初始化数据进行区域对象渲染。
步骤104,当服务器检测到一个或多个区域对象对应的描述文件更新时,将所述更新的描述文件发送至客户端;
应用于本申请实施例,开发人员或其他人员可以对创建的描述文件进行更新,则服务器检测到该更新时,将对应的更新的描述文件发送至客户端进行更新。
具体的,描述文件更新可以体现为描述文件模板的更新,当开发人员或其他人员对创建的描述文件模板进行更新时,开发人员可以将更新的描述文件模板存储在服务器中,此时,在服务器中可以存储更新的描述文件模板以及与该更新的描述文件模板前一个版本的描述文件模板,也可以存储各个版本的描述文件模板,或者,服务器只存储更新的描述文件模板(更新的描述文件模板替换原有的描述文件模板),本申请实施例对此无需加以限制。
当服务器检测到开发人员的更新操作时,将更新的描述文件模板发送至客户端,以向客户端进行同步,其中,该更新的描述文件模板具有第三对象标识。
步骤105,客户端将所述更新的描述文件替换对应区域对象中原有的描述文件。;
客户端接收到服务器发送的更新的描述文件以后,定位该描述文件对应的区域对象,并将更新的描述文件替换该区域对象原有的描述文件,以完成描述文件的更新。若客户端没有查找到该更新的描述文件对应的原有的描述文件,则客户端直接存储该描述文件。
具体的,客户端接收到服务器发来的更新的文件描述模板以后,在本地存储的所有描述文件模板中查找与该第三对象标识相同的对象标识,在查找成功时,将该相同的对象标识对应的描述文件模板确定为待更新描述文件模板。
若客户端没有查找到与该第三对象标识相同的对象标识,则客户端可以直接在本地存储该第三对象标识对应的描述文件模板。
本申请实施例在移动应用的页面更新时,只需要传递更新部分对应的区域对象的文件描述至客户端,相比于传递整个页面的内容,大大的减少了数据量的传输,节省带宽资源,提高服务器的性能。
应用于本申请实施例,开发人员可以提前创建多种描述文件模板,则使用模板的人可以直接使用现成的描述文件模板,无需再编写模板,大大的降低使用门槛,提高移动应用开发的效率。
参照图2,示出了本申请的一种基于移动应用的页面显示方法实施例二的步骤流程图,本申请实施例从客户端的角度进行描述,所述基于移动应用的页面显示方法200具体可以包括如下步骤:
步骤201,当客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;
步骤202,接收服务器返回的与所述页面标识对应的多个区域对象的描述文件;以及
其中,所述页面标识对应的页面包括多个区域对象,所述服务器用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,并将所述描述文件返回所述客户端;
步骤203,分别基于所述描述文件对对应的区域对象进行渲染。
在本申请实施例的一种优选实施例中,步骤203可以包括如下子步骤:
子步骤S31,解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码;
子步骤S32,基于所述第一本地代码,生成第一填充数据获取请求,并将所述第一填充数据获取请求发送至服务器;
子步骤S33,接收服务器返回的与所述第一填充数据获取请求对应的第一填充数据;
子步骤S34,采用所述第一填充数据填充对应的区域对象。
在本申请实施例的另一种优选实施例中,所述描述文件具有对应的描述文件模板,在执行步骤201之前,所述方法还包括如下步骤:
在所述客户端启动时,生成模板数据获取请求,并将所述模板数据获取请求发送至服务器;
接收服务器针对所述模板数据获取请求返回的所有的描述文件模板。
则步骤203可以包括如下子步骤:
子步骤S41,分别获取与所述描述文件匹配的描述文件模板;
子步骤S42,将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据;
子步骤S43,解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码;
子步骤S44,基于所述第二本地代码,生成第二填充数据获取请求,并将所述第二填充数据获取请求发送至服务器;
子步骤S45,接收服务器返回的与所述第二填充数据获取请求对应的第二填充数据;
子步骤S46,采用所述第二填充数据填充对应的区域对象。
在本申请实施例的一种优选实施例中,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述子步骤S41进一步包括如下子步骤:
子步骤S411,依据所述第一对象标识,遍历所有的描述文件模板;
子步骤S412,将与所述第一对象标识相同的第二对象标识对应的描述文件模板,作为与所述描述文件匹配的描述文件模板。
在本申请实施例的一种优选实施例中,所述子步骤S41还可以包括如下子步骤:
子步骤S413,若在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识,则基于所述第一对象标识生成模板请求;
子步骤S414,将所述模板请求发送至服务器;
子步骤S415,接收服务器返回的与所述第一对象标识对应的描述文件模板。
在本申请实施例的一种优选实施例中,本申请实施例还可以包括如下步骤:
接收服务器发送的一个或多个区域对象对应的更新的描述文件;
将所述更新的描述文件替换对应区域对象中原有的描述文件。
作为本申请实施例的一种优选示例,所述描述文件可以采用可扩展标记语言XML或JSON语法描述。
对于图2实施例而言,由于其与图1实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
参照图3,示出了本申请的一种基于移动应用的页面显示方法实施例三的步骤流程图,本申请实施例从服务器的角度进行描述,所述基于移动应用的页面显示方法300具体可以包括如下步骤:
步骤301,服务器接收客户端发送的页面数据获取请求,其中,所述页面数据获取请求包括页面标识;
所述页面数据获取请求为所述客户端检测到针对移动应用的指定操作时,生成的与所述指定操作对应的请求。
步骤302,获取预先存储的与所述页面标识对应的多个区域对象的描述文件;以及
其中,所述页面标识对应的页面包括多个区域对象。
步骤303,将所述描述文件返回所述客户端。
其中,所述客户端用于分别基于所述描述文件对对应的区域对象进行渲染。
在本申请实施例的一种优选实施例中,所述方法还包括如下步骤:
接收客户端发送的第一填充数据获取请求,所述第一填充数据获取请求为客户端解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码后,基于所述第一本地代码生成的请求;
获取与所述第一填充数据获取请求对应的第一填充数据,并将所述第一填充数据发送至客户端,所述客户端用于采用所述第一填充数据填充对应的区域对象。
在本申请实施例的另一种优选实施例中,在执行步骤301之前,所述方法还包括如下步骤:
接收客户端发送的模板数据获取请求,所述模板数据获取请求为客户端启动时生成的请求;
基于所述模板数据获取请求,向客户端返回所有的描述文件模板。
在本申请实施例的一种优选实施例中,所述方法还包括如下步骤:
接收客户端发送的第二填充数据获取请求,所述第二填充数据获取请求为客户端分别获取与所述描述文件匹配的描述文件模板,以及,将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据,并解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码后,基于所述第二本地代码生成的请求;
获取与所述第二填充数据获取请求对应的第二填充数据,并将所述第二填充数据发送至客户端,所述客户端用于采用所述第二填充数据填充对应的区域对象。
在本申请实施例的一种优选实施例中,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述方法还包括如下步骤:
接收客户端发送的模板请求,所述模板请求为所述客户端判定在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识时生成的请求;
基于所述模板请求,获取与所述第一对象标识对应的描述文件模板并发送至客户端。
在本申请实施例的一种优选实施例中,所述方法还包括如下步骤:
当检测到一个或多个区域对象对应的描述文件更新时,将所述更新的描述文件发送至客户端,所述客户端用于将所述更新的描述文件替换对应区域对象中原有的描述文件。
作为本申请实施例的一种优选示例,所述描述文件采用可扩展标记语言XML或JSON语法描述。
对于图3实施例而言,由于其与图1实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图4,示出了本申请一种基于移动应用的页面显示客户端实施例的结构框图,所述基于移动应用的页面显示客户端400具体可以包括如下模块:
页面数据请求生成模块401,用于在客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;
描述文件接收模块402,用于接收服务器返回的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象,所述服务器用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,并将所述描述文件返回所述客户端;以及
渲染模块403,用于分别基于所述描述文件对对应的区域对象进行渲染。
在本申请的一种优选实施例中,所述渲染模块403可以包括如下子模块:
第一解析子模块,用于解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码;
第一填充数据获取子模块,用于基于所述第一本地代码,生成第一填充数据获取请求,并将所述第一填充数据获取请求发送至服务器;
第一填充数据接收子模块,用于接收服务器返回的与所述第一填充数据获取请求对应的第一填充数据;
第一填充子模块,用于采用所述第一填充数据填充对应的区域对象。
在本申请的一种优选实施例中,所述描述文件具有对应的描述文件模板,所述客户端还包括:
模板数据获取模块,用于在所述客户端启动时,生成模板数据获取请求,并将所述模板数据获取请求发送至服务器;
模板数据接收模块,用于接收服务器针对所述模板数据获取请求返回的所有的描述文件模板。
在本申请的一种优选实施例中,所述渲染模块403可以包括如下子模块:
匹配子模块,用于分别获取与所述描述文件匹配的描述文件模板;
组织子模块,用于将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据;
第二解析子模块,用于解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码;
第二填充数据获取子模块,用于基于所述第二本地代码,生成第二填充数据获取请求,并将所述第二填充数据获取请求发送至服务器;
第二填充数据接收子模块,用于接收服务器返回的与所述第二填充数据获取请求对应的第二填充数据;
第二填充子模块,用于采用所述第二填充数据填充对应的区域对象。
在本申请的一种优选实施例中,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述匹配子模块包括:
遍历单元,用于依据所述第一对象标识,遍历所有的描述文件模板;
匹配单元,用于将与所述第一对象标识相同的第二对象标识对应的描述文件模板,作为与所述描述文件匹配的描述文件模板。
在本申请的一种优选实施例中,所述匹配子模块还包括:
模板请求单元,用于在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识,则基于所述第一对象标识生成模板请求;
请求发送单元,用于将所述模板请求发送至服务器;
模板接收单元,用于接收服务器返回的与所述第一对象标识对应的描述文件模板。
在本申请的一种优选实施例中,所述客户端还包括:
更新模板接收模块,用于接收服务器发送的一个或多个区域对象对应的更新的描述文件;
替换模块,用于将所述更新的描述文件替换对应区域对象中原有的描述文件。
在本申请的一种优选实施例中,所述描述文件采用可扩展标记语言XML或JSON语法描述。
对于客户端实施例而言,由于其与上述方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
参照图5,示出了本申请一种基于移动应用的页面显示服务器实施例的结构框图,所述基于移动应用的页面显示服务器500具体可以包括如下模块:
页面数据请求接收模块501,用于接收客户端发送的页面数据获取请求,其中,所述页面数据获取请求包括页面标识,所述页面数据获取请求为所述客户端检测到针对移动应用的指定操作时,生成的与所述指定操作对应的请求;
描述文件获取模块502,用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象;以及
描述文件返回模块503,用于将所述描述文件返回所述客户端,其中,所述客户端用于分别基于所述描述文件对对应的区域对象进行渲染。
在本申请的一种优选实施例中,所述服务器还包括:
第一填充请求接收模块,用于接收客户端发送的第一填充数据获取请求,所述第一填充数据获取请求为客户端解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码后,基于所述第一本地代码生成的请求;
第一填充数据获取模块,用于获取与所述第一填充数据获取请求对应的第一填充数据,并将所述第一填充数据发送至客户端,所述客户端用于采用所述第一填充数据填充对应的区域对象。
在本申请的一种优选实施例中,所述描述文件具有对应的描述文件模板,所述服务器还包括:
模板数据请求模块,用于接收客户端发送的模板数据获取请求,所述模板数据获取请求为客户端启动时生成的请求;
模板数据返回模块,用于基于所述模板数据获取请求,向客户端返回所有的描述文件模板。
在本申请的一种优选实施例中,所述服务器还包括:
第二填充请求接收模块,用于接收客户端发送的第二填充数据获取请求,所述第二填充数据获取请求为客户端分别获取与所述描述文件匹配的描述文件模板,以及,将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据,并解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码后,基于所述第二本地代码生成的请求;
第二填充数据获取模块,用于获取与所述第二填充数据获取请求对应的第二填充数据,并将所述第二填充数据发送至客户端,所述客户端用于采用所述第二填充数据填充对应的区域对象。
在本申请的一种优选实施例中,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述服务器还包括:
模板请求接收模块,用于接收客户端发送的模板请求,所述模板请求为所述客户端判定在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识时生成的请求;
模板数据发送模块,用于基于所述模板请求,获取与所述第一对象标识对应的描述文件模板并发送至客户端。
在本申请的一种优选实施例中,所述服务器还包括:
更新检测模块,用于在检测到一个或多个区域对象对应的描述文件更新时,将所述更新的描述文件发送至客户端,所述客户端用于将所述更新的描述文件替换对应区域对象中原有的描述文件。
在本申请的一种优选实施例中,所述描述文件采用可扩展标记语言XML或JSON语法描述。
对于服务器实施例而言,由于其与上述方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
参照图6,示出了本申请一种基于移动应用的页面显示平台实施例的结构框图,所述基于移动应用的页面显示客户端600具体可以客户端601及服务器602,其中,
所述客户端601可以包括如下模块:
页面数据请求生成模块,用于在客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;
描述文件接收模块,用于接收服务器返回的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象;以及
渲染模块,用于分别基于所述描述文件对对应的区域对象进行渲染;
所述服务器602可以包括如下模块:
页面数据请求接收模块,用于接收客户端发送的页面数据获取请求;
描述文件获取模块,用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件;以及
描述文件返回模块,用于将所述描述文件返回所述客户端。
对于平台实施例而言,由于其与上述方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序操作指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序操作指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的操作指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序操作指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的操作指令产生包括操作指令装置的制造品,该操作指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序操作指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的操作指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种基于移动应用的页面显示方法、客户端、服务器及平台进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (31)
1.一种基于移动应用的页面显示方法,其特征在于,所述的方法包括:
当客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;
接收服务器返回的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象,所述服务器用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,并将所述描述文件返回所述客户端;以及
分别基于所述描述文件对对应的区域对象进行渲染。
2.根据权利要求1所述的方法,其特征在于,所述分别基于所述描述文件对对应的区域对象进行渲染的步骤包括:
解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码;
基于所述第一本地代码,生成第一填充数据获取请求,并将所述第一填充数据获取请求发送至服务器;
接收服务器返回的与所述第一填充数据获取请求对应的第一填充数据;
采用所述第一填充数据填充对应的区域对象。
3.根据权利要求1所述的方法,其特征在于,所述描述文件具有对应的描述文件模板,在所述当客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器的步骤之前,所述方法还包括:
在所述客户端启动时,生成模板数据获取请求,并将所述模板数据获取请求发送至服务器;
接收服务器针对所述模板数据获取请求返回的所有的描述文件模板。
4.根据权利要求3所述的方法,其特征在于,所述分别基于所述描述文件对对应的区域对象进行渲染的步骤包括:
分别获取与所述描述文件匹配的描述文件模板;
将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据;
解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码;
基于所述第二本地代码,生成第二填充数据获取请求,并将所述第二填充数据获取请求发送至服务器;
接收服务器返回的与所述第二填充数据获取请求对应的第二填充数据;
采用所述第二填充数据填充对应的区域对象。
5.根据权利要求4所述的方法,其特征在于,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述分别获取与所述描述文件匹配的描述文件模板的步骤包括:
依据所述第一对象标识,遍历所有的描述文件模板;
将与所述第一对象标识相同的第二对象标识对应的描述文件模板,作为与所述描述文件匹配的描述文件模板。
6.根据权利要求5所述的方法,其特征在于,所述分别获取与所述描述文件匹配的描述文件模板的步骤还包括:
若在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识,则基于所述第一对象标识生成模板请求;
将所述模板请求发送至服务器;
接收服务器返回的与所述第一对象标识对应的描述文件模板。
7.根据权利要求1所述的方法,其特征在于,还包括:
接收服务器发送的一个或多个区域对象对应的更新的描述文件;将所述更新的描述文件替换对应区域对象中原有的描述文件。
8.根据权利要求1或2或3或7所述的方法,其特征在于,所述描述文件采用可扩展标记语言XML或JSON语法描述。
9.一种基于移动应用的页面显示方法,其特征在于,所述方法包括:
服务器接收客户端发送的页面数据获取请求,其中,所述页面数据获取请求包括页面标识,所述页面数据获取请求为所述客户端检测到针对移动应用的指定操作时,生成的与所述指定操作对应的请求;
获取预先存储的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象;以及
将所述描述文件返回所述客户端,其中,所述客户端用于分别基于所述描述文件对对应的区域对象进行渲染。
10.根据权利要求9所述的方法,其特征在于,还包括:
接收客户端发送的第一填充数据获取请求,所述第一填充数据获取请求为客户端解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码后,基于所述第一本地代码生成的请求;
获取与所述第一填充数据获取请求对应的第一填充数据,并将所述第一填充数据发送至客户端,所述客户端用于采用所述第一填充数据填充对应的区域对象。
11.根据权利要求9所述的方法,其特征在于,所述描述文件具有对应的描述文件模板,在所述服务器接收客户端发送的页面数据获取请求的步骤之前,所述方法还包括:
接收客户端发送的模板数据获取请求,所述模板数据获取请求为客户端启动时生成的请求;
基于所述模板数据获取请求,向客户端返回所有的描述文件模板。
12.根据权利要求11所述的方法,其特征在于,还包括:
接收客户端发送的第二填充数据获取请求,所述第二填充数据获取请求为客户端分别获取与所述描述文件匹配的描述文件模板,以及,将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据,并解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码后,基于所述第二本地代码生成的请求;
获取与所述第二填充数据获取请求对应的第二填充数据,并将所述第二填充数据发送至客户端,所述客户端用于采用所述第二填充数据填充对应的区域对象。
13.根据权利要求12所述的方法,其特征在于,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述方法还包括:
接收客户端发送的模板请求,所述模板请求为所述客户端判定在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识时生成的请求;
基于所述模板请求,获取与所述第一对象标识对应的描述文件模板并发送至客户端。
14.根据权利要求9所述的方法,其特征在于,还包括:
当检测到一个或多个区域对象对应的描述文件更新时,将所述更新的描述文件发送至客户端,所述客户端用于将所述更新的描述文件替换对应区域对象中原有的描述文件。。
15.根据权利要求9或10或11或14所述的方法,其特征在于,所述描述文件采用可扩展标记语言XML或JSON语法描述。
16.一种基于移动应用的页面显示客户端,其特征在于,所述的客户端包括:
页面数据请求生成模块,用于在客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;
描述文件接收模块,用于接收服务器返回的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象,所述服务器用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,并将所述描述文件返回所述客户端;以及
渲染模块,用于分别基于所述描述文件对对应的区域对象进行渲染。
17.根据权利要求16所述的客户端,其特征在于,所述渲染模块包括:
第一解析子模块,用于解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码;
第一填充数据获取子模块,用于基于所述第一本地代码,生成第一填充数据获取请求,并将所述第一填充数据获取请求发送至服务器;
第一填充数据接收子模块,用于接收服务器返回的与所述第一填充数据获取请求对应的第一填充数据;
第一填充子模块,用于采用所述第一填充数据填充对应的区域对象。
18.根据权利要求16所述的客户端,其特征在于,所述描述文件具有对应的描述文件模板,所述客户端还包括:
模板数据获取模块,用于在所述客户端启动时,生成模板数据获取请求,并将所述模板数据获取请求发送至服务器;
模板数据接收模块,用于接收服务器针对所述模板数据获取请求返回的所有的描述文件模板。
19.根据权利要求18所述的客户端,其特征在于,所述渲染模块包括:
匹配子模块,用于分别获取与所述描述文件匹配的描述文件模板;
组织子模块,用于将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据;
第二解析子模块,用于解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码;
第二填充数据获取子模块,用于基于所述第二本地代码,生成第二填充数据获取请求,并将所述第二填充数据获取请求发送至服务器;
第二填充数据接收子模块,用于接收服务器返回的与所述第二填充数据获取请求对应的第二填充数据;
第二填充子模块,用于采用所述第二填充数据填充对应的区域对象。
20.根据权利要求19所述的客户端,其特征在于,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述匹配子模块包括:
遍历单元,用于依据所述第一对象标识,遍历所有的描述文件模板;
匹配单元,用于将与所述第一对象标识相同的第二对象标识对应的描述文件模板,作为与所述描述文件匹配的描述文件模板。
21.根据权利要求20所述的客户端,其特征在于,所述匹配子模块还包括:
模板请求单元,用于在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识,则基于所述第一对象标识生成模板请求;
请求发送单元,用于将所述模板请求发送至服务器;
模板接收单元,用于接收服务器返回的与所述第一对象标识对应的描述文件模板。
22.根据权利要求16所述的客户端,其特征在于,还包括:
更新模板接收模块,用于接收服务器发送的一个或多个区域对象对应的更新的描述文件;
替换模块,用于将所述更新的描述文件替换对应区域对象中原有的描述文件。
23.根据权利要求16或17或18或22所述的客户端,其特征在于,所述描述文件采用可扩展标记语言XML或JSON语法描述。
24.一种基于移动应用的页面显示服务器,其特征在于,所述服务器包括:
页面数据请求接收模块,用于接收客户端发送的页面数据获取请求,其中,所述页面数据获取请求包括页面标识,所述页面数据获取请求为所述客户端检测到针对移动应用的指定操作时,生成的与所述指定操作对应的请求;
描述文件获取模块,用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象;以及
描述文件返回模块,用于将所述描述文件返回所述客户端,其中,所述客户端用于分别基于所述描述文件对对应的区域对象进行渲染。
25.根据权利要求24所述的服务器,其特征在于,还包括:
第一填充请求接收模块,用于接收客户端发送的第一填充数据获取请求,所述第一填充数据获取请求为客户端解析所述描述文件,获得与所述移动应用所在操作系统所适配的第一本地代码后,基于所述第一本地代码生成的请求;
第一填充数据获取模块,用于获取与所述第一填充数据获取请求对应的第一填充数据,并将所述第一填充数据发送至客户端,所述客户端用于采用所述第一填充数据填充对应的区域对象。
26.根据权利要求24所述的服务器,其特征在于,所述描述文件具有对应的描述文件模板,所述服务器还包括:
模板数据请求模块,用于接收客户端发送的模板数据获取请求,所述模板数据获取请求为客户端启动时生成的请求;
模板数据返回模块,用于基于所述模板数据获取请求,向客户端返回所有的描述文件模板。
27.根据权利要求26所述的服务器,其特征在于,还包括:
第二填充请求接收模块,用于接收客户端发送的第二填充数据获取请求,所述第二填充数据获取请求为客户端分别获取与所述描述文件匹配的描述文件模板,以及,将所述描述文件及与所述描述文件匹配的描述文件模板组织成对应区域对象的描述文件数据,并解析所述描述文件数据,获得与所述移动应用所在操作系统所适配的第二本地代码后,基于所述第二本地代码生成的请求;
第二填充数据获取模块,用于获取与所述第二填充数据获取请求对应的第二填充数据,并将所述第二填充数据发送至客户端,所述客户端用于采用所述第二填充数据填充对应的区域对象。
28.根据权利要求27所述的服务器,其特征在于,所述描述文件包括第一对象标识,所述描述文件模板包括第二对象标识,所述服务器还包括:
模板请求接收模块,用于接收客户端发送的模板请求,所述模板请求为所述客户端判定在所述描述文件模板中不存在与所述第一对象标识相同的第二对象标识时生成的请求;
模板数据发送模块,用于基于所述模板请求,获取与所述第一对象标识对应的描述文件模板并发送至客户端。
29.根据权利要求24所述的服务器,其特征在于,还包括:
更新检测模块,用于在检测到一个或多个区域对象对应的描述文件更新时,将所述更新的描述文件发送至客户端,所述客户端用于将所述更新的描述文件替换对应区域对象中原有的描述文件。
30.根据权利要求24或25或26或29所述的服务器,其特征在于,所述描述文件采用可扩展标记语言XML或JSON语法描述。
31.一种基于移动应用的页面显示平台,其特征在于,所述平台包括客户端与服务器,其中,
所述客户端包括:
页面数据请求生成模块,用于在客户端检测到针对移动应用的指定操作时,生成与所述指定操作对应的页面数据获取请求,并将所述页面数据获取请求发送至服务器,所述页面数据获取请求包括页面标识;
描述文件接收模块,用于接收服务器返回的与所述页面标识对应的多个区域对象的描述文件,其中,所述页面标识对应的页面包括多个区域对象;以及
渲染模块,用于分别基于所述描述文件对对应的区域对象进行渲染;
所述服务器包括:
页面数据请求接收模块,用于接收客户端发送的页面数据获取请求;
描述文件获取模块,用于获取预先存储的与所述页面标识对应的多个区域对象的描述文件;以及
描述文件返回模块,用于将所述描述文件返回所述客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510276505.5A CN106293311B (zh) | 2015-05-26 | 2015-05-26 | 基于移动应用的页面显示方法、客户端、服务器及平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510276505.5A CN106293311B (zh) | 2015-05-26 | 2015-05-26 | 基于移动应用的页面显示方法、客户端、服务器及平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106293311A true CN106293311A (zh) | 2017-01-04 |
CN106293311B CN106293311B (zh) | 2020-03-10 |
Family
ID=57635275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510276505.5A Active CN106293311B (zh) | 2015-05-26 | 2015-05-26 | 基于移动应用的页面显示方法、客户端、服务器及平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106293311B (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107038245A (zh) * | 2017-04-25 | 2017-08-11 | 努比亚技术有限公司 | 页面切换方法、移动终端及存储介质 |
CN107102866A (zh) * | 2017-06-01 | 2017-08-29 | 北京智网易联科技有限公司 | iOS系统下的原生APP文件生成方法、设备以及服务器 |
CN108282518A (zh) * | 2017-12-26 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 一种客户端页面生成方法和装置 |
CN108563477A (zh) * | 2018-03-02 | 2018-09-21 | 北京奇艺世纪科技有限公司 | 一种页面事件响应方法和装置 |
CN108829885A (zh) * | 2018-06-27 | 2018-11-16 | 珠海市君天电子科技有限公司 | 页面生成方法、装置、服务器、电子设备及存储介质 |
CN109189539A (zh) * | 2018-09-03 | 2019-01-11 | 深圳市东微智能科技股份有限公司 | 界面的更新方法、终端及计算机可读存储介质 |
CN109426541A (zh) * | 2017-08-31 | 2019-03-05 | 阿里巴巴集团控股有限公司 | 一种页面换肤的方法和装置 |
CN109684574A (zh) * | 2018-08-20 | 2019-04-26 | 平安普惠企业管理有限公司 | 页面加载方法、装置、设备及存储介质 |
CN109814865A (zh) * | 2019-01-18 | 2019-05-28 | 四川长虹电器股份有限公司 | 一种基于json数据格式的移动应用页面生成方法 |
CN109977026A (zh) * | 2019-04-04 | 2019-07-05 | 天津字节跳动科技有限公司 | 测试网页回滚方法和装置 |
CN110837534A (zh) * | 2019-11-07 | 2020-02-25 | 北京字节跳动网络技术有限公司 | 一种数据列表的展示方法、装置、设备和存储介质 |
CN111078918A (zh) * | 2019-12-04 | 2020-04-28 | 视联动力信息技术股份有限公司 | 一种图像处理方法、装置、电子设备以及存储介质 |
CN111984359A (zh) * | 2020-08-31 | 2020-11-24 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种控件的动态生成和渲染方法及装置 |
CN111984259A (zh) * | 2020-07-10 | 2020-11-24 | 浙江大搜车软件技术有限公司 | 界面创建方法、装置、设备及存储介质 |
CN112306972A (zh) * | 2020-11-02 | 2021-02-02 | 西安博康硕达网络科技有限公司 | 一种基于云存储的文件生成方法和装置 |
CN112417346A (zh) * | 2021-01-25 | 2021-02-26 | 北京小米移动软件有限公司 | 渲染方法、装置、电子设备及存储介质 |
WO2021120913A1 (zh) * | 2019-12-20 | 2021-06-24 | 北京金山云网络技术有限公司 | 应用加载方法、装置、用户终端和服务器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103024583A (zh) * | 2012-12-26 | 2013-04-03 | 新奥特(北京)视频技术有限公司 | 一种数据显示的方法和装置 |
CN103514159A (zh) * | 2012-06-14 | 2014-01-15 | 阿里巴巴集团控股有限公司 | 一种处理表单模板的方法、系统以及装置 |
CN103577207A (zh) * | 2012-08-01 | 2014-02-12 | 阿里巴巴集团控股有限公司 | 一种自定义界面系统中界面组件的加载方法和装置 |
-
2015
- 2015-05-26 CN CN201510276505.5A patent/CN106293311B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103514159A (zh) * | 2012-06-14 | 2014-01-15 | 阿里巴巴集团控股有限公司 | 一种处理表单模板的方法、系统以及装置 |
CN103577207A (zh) * | 2012-08-01 | 2014-02-12 | 阿里巴巴集团控股有限公司 | 一种自定义界面系统中界面组件的加载方法和装置 |
CN103024583A (zh) * | 2012-12-26 | 2013-04-03 | 新奥特(北京)视频技术有限公司 | 一种数据显示的方法和装置 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107038245B (zh) * | 2017-04-25 | 2020-12-11 | 粒度创新科技(苏州)有限公司 | 页面切换方法、移动终端及存储介质 |
CN107038245A (zh) * | 2017-04-25 | 2017-08-11 | 努比亚技术有限公司 | 页面切换方法、移动终端及存储介质 |
CN107102866A (zh) * | 2017-06-01 | 2017-08-29 | 北京智网易联科技有限公司 | iOS系统下的原生APP文件生成方法、设备以及服务器 |
CN107102866B (zh) * | 2017-06-01 | 2021-05-25 | 北京智网易联科技有限公司 | iOS系统下的原生APP文件生成方法、设备以及服务器 |
CN109426541A (zh) * | 2017-08-31 | 2019-03-05 | 阿里巴巴集团控股有限公司 | 一种页面换肤的方法和装置 |
CN108282518A (zh) * | 2017-12-26 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 一种客户端页面生成方法和装置 |
CN108563477A (zh) * | 2018-03-02 | 2018-09-21 | 北京奇艺世纪科技有限公司 | 一种页面事件响应方法和装置 |
CN108829885A (zh) * | 2018-06-27 | 2018-11-16 | 珠海市君天电子科技有限公司 | 页面生成方法、装置、服务器、电子设备及存储介质 |
CN109684574A (zh) * | 2018-08-20 | 2019-04-26 | 平安普惠企业管理有限公司 | 页面加载方法、装置、设备及存储介质 |
CN109189539A (zh) * | 2018-09-03 | 2019-01-11 | 深圳市东微智能科技股份有限公司 | 界面的更新方法、终端及计算机可读存储介质 |
CN109814865A (zh) * | 2019-01-18 | 2019-05-28 | 四川长虹电器股份有限公司 | 一种基于json数据格式的移动应用页面生成方法 |
CN109977026A (zh) * | 2019-04-04 | 2019-07-05 | 天津字节跳动科技有限公司 | 测试网页回滚方法和装置 |
CN110837534A (zh) * | 2019-11-07 | 2020-02-25 | 北京字节跳动网络技术有限公司 | 一种数据列表的展示方法、装置、设备和存储介质 |
CN111078918A (zh) * | 2019-12-04 | 2020-04-28 | 视联动力信息技术股份有限公司 | 一种图像处理方法、装置、电子设备以及存储介质 |
CN111078918B (zh) * | 2019-12-04 | 2022-12-13 | 视联动力信息技术股份有限公司 | 一种图像处理方法、装置、电子设备以及存储介质 |
WO2021120913A1 (zh) * | 2019-12-20 | 2021-06-24 | 北京金山云网络技术有限公司 | 应用加载方法、装置、用户终端和服务器 |
CN111984259A (zh) * | 2020-07-10 | 2020-11-24 | 浙江大搜车软件技术有限公司 | 界面创建方法、装置、设备及存储介质 |
CN111984359A (zh) * | 2020-08-31 | 2020-11-24 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种控件的动态生成和渲染方法及装置 |
CN112306972A (zh) * | 2020-11-02 | 2021-02-02 | 西安博康硕达网络科技有限公司 | 一种基于云存储的文件生成方法和装置 |
CN112417346A (zh) * | 2021-01-25 | 2021-02-26 | 北京小米移动软件有限公司 | 渲染方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106293311B (zh) | 2020-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106293311A (zh) | 基于移动应用的页面显示方法、客户端、服务器及平台 | |
CN103988200B (zh) | 用于web应用的轻量化框架 | |
CN106843828B (zh) | 界面显示、加载方法及装置 | |
CN113168326B (zh) | 用于无线通信系统中的基于网络的媒体处理功能的管理的方法和设备 | |
JP4857349B2 (ja) | ポータル・システム内で非同期ポータル・ページを提供するための方法、システム、およびコンピュータ・プログラム | |
CN101122921B (zh) | 基于ajax与html标记形成树形显示结构的方法 | |
US20170213156A1 (en) | Artificial intelligence engine having multiple independent processes on a cloud based platform configured to scale | |
CN104111827B (zh) | 应用程序匹配方法及装置 | |
CN107402747B (zh) | 一种支持多终端类型的应用页面动态生成方法 | |
CN106663013B (zh) | 针对服务升级的动态调整步调 | |
US10284671B2 (en) | Dynamic bundling of web components for asynchronous delivery | |
CN104115142B (zh) | 用于书签同步的特定于设备的文件夹 | |
US10007532B1 (en) | Data infrastructure for cross-platform cross-device API inter-connectivity | |
CN108804188A (zh) | 界面换肤方法及装置 | |
CN105808736A (zh) | 一种榜单数据更新方法、装置及系统 | |
US9401957B2 (en) | System and method for synchronization between servers | |
CN109213498A (zh) | 一种互联网web前端的配置方法及服务器 | |
CN103827778B (zh) | 企业工具增强 | |
CN106802762B (zh) | 在虚拟会话中同步服务器侧键盘布局与客户端侧布局 | |
US9069873B2 (en) | Apparatus and method for creating mashup web application | |
Stoyanov et al. | Intelligent distributed eLearning architecture | |
CN110222280A (zh) | 用于分享的数据处理方法及装置 | |
CN111325552A (zh) | 数据处理方法及装置、电子设备、存储介质 | |
CN106371931B (zh) | 一种基于Web框架的高性能地学计算服务系统 | |
CN106254411B (zh) | 用于提供服务的系统、服务器系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |