CN106990949A - 应用页面显示方法和装置 - Google Patents
应用页面显示方法和装置 Download PDFInfo
- Publication number
- CN106990949A CN106990949A CN201611267415.0A CN201611267415A CN106990949A CN 106990949 A CN106990949 A CN 106990949A CN 201611267415 A CN201611267415 A CN 201611267415A CN 106990949 A CN106990949 A CN 106990949A
- Authority
- CN
- China
- Prior art keywords
- page
- client
- adaptation layer
- data
- pages
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种应用页面显示方法,包括:适配层接收客户端发送的页面数据请求,页面数据请求携带页面标识;适配层根据页面标识获取对应的页面元素描述,页面元素描述是指对页面内容包含的页面元素的定义;适配层根据页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据;适配层根据页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。应用页面显示的具体内容均由适配层定义,客户端只负责将页面内容以预设的页面样式进行显示,当升级应用时,只需要在适配层改变相应页面元素描述,不需要频繁升级客户端,提高了开发的灵活性以及产品的更新速度。还提供一种应用页面显示装置。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种应用页面显示方法和装置。
背景技术
随着移动互联网的迅速发展,移动应用层出不穷,功能丰富。而应用的功能实现需要服务器的数据支持。传统的应用功能的实现根据客户端与服务器之间的功能定位主要包括胖客户端模式和瘦客户端模式两种方案。
胖客户端模式是指以客户端原生界面和服务器数据调用接口组成的模式,该模式通过定义功能丰富的客户端原生界面,提供良好的交互体验,但由于原生界面是Android系统提供的UI(User Interface,用户界面)控件构建的用户交互界面,无法通过服务器进行改变,因此当应用功能进行更新迭代时,用户需要频繁升级客户端,以显示与应用更新功能相匹配的用户界面。如一款音乐应用需要将原有的用户界面中按钮样式进行改变,必须对整个客户端进行升级,导致开发灵活性很低,影响产品迭代速度。瘦客户端模式是指服务器端负责处理业务逻辑和数据存取,然后将处理完的结果以html(超文本标记语言)的形式发送到客户端,客户端负责将结果显示给用户,客户端除了负责一些数据的验证和组织之外,基本上不处理任何的业务逻辑,只专注于用户交互界面显示。瘦客户端模式虽然解决了频繁更新客户端的问题,但是客户端与服务器强耦合,服务器的逻辑变化影响客户端的显示行为,开发低效。
因此,当前实现应用功能更新的方案存在需要频繁升级客户端以更新客户端显示界面,导致应用开发灵活性很低,产品更新迭代速度较慢的问题。
发明内容
基于此,有必要针对上述问题,提供一种当应用功能更新时不需要频繁更新客户端显示界面,以提高应用开发灵活性的应用页面显示方法和装置。
一种应用页面显示方法包括:
适配层接收客户端发送的页面数据请求,页面数据请求携带页面标识;
适配层根据页面标识获取对应的页面元素描述,页面元素描述是指对页面内容包含的页面元素的定义;
适配层根据页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据;
适配层根据页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
在其中一个实施例中,页面元素包括图形、文字、超链接网址以及子页面中的至少一种;适配层根据页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据包括:
当适配层检测到页面元素描述包括对子页面的定义时,获取子页面对应的子页面标识,并根据子页面标识获取对应的子页面元素描述;
适配层根据子页面元素描述向服务器发送对应的数据请求,并获取从服务端返回的子页面数据。
在其中一个实施例中,适配层根据页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示,包括:
适配层将获取的不同的子页面数据以列表或组合的形式生成对应的页面内容;
将页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
在其中一个实施例中,应用页面显示方法还包括:
适配层根据应用升级需求,更新页面标识对应的页面元素描述;
当适配层接收到客户端发送的页面数据请求时,根据页面数据请求携带的页面标识获取更新后的页面元素描述;
适配层根据更新后的页面元素描述向服务器发送数据请求,获取服务器发送的页面数据;
适配层根据服务器发送的页面数据生成更新后的页面内容并发送至客户端,以使客户端以预设的页面样式对更新后的页面内容进行显示。
在其中一个实施例中,适配层根据页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示,包括:
适配层根据预先定义的转换关系将从服务器获取的页面数据的数据类型进行转换;
将转换后的页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
一种应用页面显示装置,包括:
第一接收模块,用于适配层接收客户端发送的页面数据请求,页面数据请求携带页面标识;
第一获取模块,用于适配层根据页面标识获取对应的页面元素描述,页面元素描述是指对页面内容包含的页面元素的定义;
第一数据请求模块,用于适配层根据页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据;
第一发送模块,用于适配层根据页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
在其中一个实施例中,页面元素包括图形、文字、超链接网址以及子页面中的至少一种;第一数据请求模块还用于当适配层检测到页面元素描述包括对子页面的定义时,获取子页面对应的子页面标识,并根据子页面标识获取对应的子页面元素描述;适配层根据子页面元素描述向服务器发送对应的数据请求,并获取从服务端返回的子页面数据。
在其中一个实施例中,第一发送模块还用于适配层将获取的不同的子页面数据以列表或组合的形式生成对应的页面内容;将页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
在其中一个实施例中,应用页面显示装置还包括:
更新模块,用于适配层根据应用升级需求,更新页面标识对应的页面元素描述;
第二接收模块,当适配层接收到客户端发送的页面数据请求时,根据页面数据请求携带的页面标识获取更新后的页面元素描述;
第二数据请求模块,适配层根据更新后的页面元素描述向服务器发送数据请求,获取服务器发送的页面数据;
第二发送模块,适配层根据服务器发送的页面数据生成更新后的页面内容并发送至客户端,以使客户端以预设的页面样式对更新后的页面内容进行显示。
在其中一个实施例中,第一发送模块还用于适配层根据预先定义的转换关系将从服务器获取的页面数据的数据类型进行转换;将转换后的页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
上述应用页面显示方法和装置,在客户端与服务器之间抽象出适配层,当用户打开应用时,根据用户的不同操作,客户端向适配层发送不同的页面数据请求,携带页面标识,适配层根据页面标识获取对应的页面元素描述,并向服务器发送对应的页面数据请求获取页面数据,根据页面数据和页面元素描述生成页面标识对应的页面内容发送至客户端,以使客户端根据预设的页面样式对所述页面内容进行显示,实现用户与应用界面之间的交互。在客户端与服务器之间抽象出适配层,由客户端、适配层与服务器共同实现应用功能,应用页面显示的具体内容均由适配层定义,服务器根据适配层的需求提供数据,客户端只负责将适配层返回的页面内容以预先设置的页面样式进行显示,当应用需要升级或者改变部分界面内容时,只需要在适配层改变相应页面元素描述即可,不需要频繁升级客户端,提高了开发的灵活性以及产品的更新速度。
附图说明
图1为一个实施例中应用页面显示方法流程图;
图2为另一个实施例中应用页面显示方法流程图;
图3为一个实施例中应用页面显示方法的原理图;
图4为一个实施例中应用页面显示方法的详细流程图;
图5为一个实施例中的应用界面图;
图6为一个实施例中的应用界面图;
图7为一个实施例中的应用界面图;
图8为一个实施例中应用页面显示装置的结构框图;
图9为另一个实施例中应用页面显示装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,在一个实施例中,提供一种应用页面显示方法,包括以下步骤:
步骤110,适配层接收客户端发送的页面数据请求,页面数据请求携带页面标识。
本实施例中,适配层也即adapter层,是连接后端数据与前端显示的适配器接口,是数据和UI(用户界面)之间的一个重要纽带。在应用客户端与服务器之间增加适配层,用于分担客户端应用页面的预渲染工作,预渲染工作是指在将图像页面渲染成UI之前的准备工作,如对应用页面的图形界面的排版、文字内容的填写、图片的选取等工作。
本实施例中,当用户打开应用客户端或者使用应用时,用户不同的操作行为对应跳转显示不同的应用页面。显示应用页面首先需要获取页面数据,当用户使用应用客户端时,客户端根据用户的操作行为向适配层发送对应的页面数据请求,该页面数据请求携带页面标识。适配层接收客户端发送的携带页面标识的页面数据请求。
步骤120,适配层根据页面标识获取对应的页面元素描述,页面元素描述是指对页面内容包含的页面元素的定义。
本实施例中,预先在客户端使用页面标识标记不同的应用页面。预先在适配层对应用页面进行页面元素描述,这里所说的页面元素描述是指对应用页面对应的页面内容包含的元素的定义。在适配层将页面元素描述与页面标识相关联。
本实施例中,当适配层获取客户端发送的携带页面标识的页面数据请求时,根据预先存储的页面元素描述与页面标识之间的关联关系,获取对应的页面元素描述。页面元素描述是指对页面内容包含的页面元素的定义,页面元素包括对页面文字、图片、超链接网址、页面元素对应的操作功能以及子页面中的至少一种,页面元素描述主要是对页面元素对应的具体文字或图片信息、页面元素对应的点击操作以及页面元素是否包含子页面等具体信息的定义。
步骤130,适配层根据页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据。
本实施例中,构成页面内容的某些元素需要从服务器获取相应数据,适配层预先在页面元素描述中定义这类元素对应的服务器网络地址。当适配层根据客户端发送的页面数据请求获取对应的页面元素描述后,根据页面元素描述中对应的服务器网络地址,向服务器发送对应的数据请求,服务器根据对应的网络地址获取对应的数据返回至适配层,适配层接收服务器返回的页面数据也即返回页面元素的具体信息。
步骤140,适配层根据页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
本实施例中,适配层根据页面元素描述以及服务端返回的数据获取页面标识对应的页面中所有元素的详细信息,并生成对应的页面内容发送至客户端。
预先在客户端定义页面样式,即页面内容的显示形式以及排版方式。当适配层将页面内容的详细信息发送至客户端时,客户端根据预先定义的样式对页面内容进行渲染并进行显示,得到应用界面,从而实现用户与应用界面之间的交互。
本实施例中,在客户端与服务器之间抽象出适配层,由客户端、适配层与服务器共同实现应用功能,应用页面显示的具体内容均由适配层定义,服务器根据适配层的需求提供数据,客户端只负责将适配层返回的页面内容以预先设置的页面样式进行显示,当应用需要升级或者改变部分界面内容时,只需要在适配层改变相应页面元素描述即可,不需要频繁升级客户端,提高了开发的灵活性以及产品的更新速度。
在其他实施例中,客户端页面样式也可以通过预测应用的发展趋势,预埋不同页面样式,当应用升级或者更新时,可以根据新的需求启用预埋的页面样式,降低客户端的更新次数,提高升级和开发效率。
在一个实施例中,页面元素包括图形、文字、超链接网址以及子页面中的至少一种;适配层根据页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据包括:
当适配层检测到页面元素描述包括对子页面的定义时,获取子页面对应的子页面标识,并根据子页面标识获取对应的子页面元素描述;适配层根据子页面元素描述向服务器发送对应的数据请求,并获取从服务端返回的子页面数据。
本实施例中,应用页面由不同的元素组成,页面元素包括图形、文字、超链接网址以及子页面中的至少一种。应用页面可以是原子页面,即页面内容由图片、文字或超链接网址中的至少一种构成,不包括其他页面。应用页面还可以是容器页面,容器页面能够嵌套其他应用页面。每个页面对应一个页面标识,因为容器页面包括其他多个页面,因此在容器页面的页面元素描述中能够获取组成容器页面的其他页面对应的页面标识。
因此,当适配层根据页面标识获取到的页面元素描述中包括对子页面的定义时,获取对应的子页面的页面标识,根据子页面的页面标识获取对应的子页面元素描述,根据子页面元素描述向服务器发送对应的数据请求,并获取从服务端返回的子页面数据。
本实施例中,应用页面可由多个子页面嵌套组成,能够通过定义容器页面中子页面的页面标识改变容器页面中嵌套的子页面,从而改变容器页面的内容,通过页面之间的嵌套实现页面显示内容或者功能的改变或增加,能够满足不同的样式需求。
在一个实施例中,适配层根据页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示,包括:
适配层将获取的不同的子页面数据以列表或组合的形式生成对应的页面内容;将页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
本实施例中,当检测到应用页面的页面元素描述中包括多个子页面元素描述时,分别根据子页面的页面标识获取对应的页面内容,将不同的子页面以列表或组合的形式发送至客户端,如客户端需要展示一个视频列表,每一个视频用一个子页面显示,适配层就返回一个视频子页面列表;如果客户端需要展示的是一个有嵌套关系的组合页面,适配层就返回一个包括多张子页面的组合页面,子页面也可以再次嵌套子页面,能够满足不同的客户端显示的页面样式的需求。
本实施例中,适配层根据客户端需求将子页面以列表或者组合的形式发送至客户端,使客户端能够根据预设的样式进行显示,通过子页面的嵌套组合能够满足客户端不同样式的需求,能够保证当应用需要更新显示的内容时,不需要更新客户端,提高了开发的效率。
如图2所示,在一个实施例中,提供一种应用页面显示方法,包括以下内容:
步骤210,适配层根据应用升级需求,更新页面标识对应的页面元素描述。
本实施例中,适配层装置在服务端,适配层的修改不依赖于客户端的发布。当应用的某个页面需要升级或更新时,通过在适配层更改该页面对应的页面元素描述,如增加子页面元素描述或更改原来页面元素对应的点击操作,从而改变页面对应的功能。
步骤220,当适配层接收到客户端发送的页面数据请求时,根据页面数据请求携带的页面标识获取更新后的页面元素描述。
本实施例中,当适配层完成应用更新后,检测到客户端发送对应的页面数据请求时,根据页面数据请求携带的页面标识获取对应的页面元素描述,即获取适配层对该页面更新后的内容。
步骤230,适配层根据更新后的页面元素描述向服务器发送数据请求,获取服务器发送的页面数据。
本实施例中,适配层根据更新后的页面元素描述向服务器发送数据请求,服务器根据相应的数据请求发送对应的页面数据至适配层,适配层获取服务器发送的页面数据,获取更新后的页面内容详细信息。
步骤240,适配层根据服务器发送的页面数据生成更新后的页面内容并发送至客户端,以使客户端以预设的页面样式对更新后的页面内容进行显示。
本实施例中,适配层根据当前更新后的页面元素描述获取对应的页面元素信息,生成更新后的页面内容发送至客户端,客户端以预设页面样式对更新后的页面内容进行渲染并显示,此时客户端用户界面显示的内容和对应的功能即为更新后的内容和功能,实现了应用界面的更新。
本实施例中,但需要对应用界面进行升级或更新时,只需要在适配层更改相应的页面元素描述的信息,即可实现在客户端应用界面显示更新后的页面,不需要频繁升级客户端,提高了应用开发的效率。
在一个实施例中,适配层根据页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示,包括:
适配层根据预先定义的转换关系将从服务器获取的页面数据的数据类型进行转换;将转换后的页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
本实施例中,适配层与客户端预先定义页面数据类型和接口,对客户端API(Application Programming Interface,应用程序编程接口)做一次封装,适配层向客户端返回定义好的内容。比如,适配层与客户端约定返回内容A,适配层通过服务器API获取的数据为B,则根据预先定义的逻辑转换关系将从服务端获取的页面数据B转换成A,以使客户端根据预设的页面样式对页面内容进行显示。
进一步的,当服务器升级或者逻辑修改,适配层从服务器API获取的数据变成了C,此时只需要在适配层增加逻辑将C转换成A就可以满足客户端的要求,客户端不需要做任何改变。
本实施例中,通过在适配层设置不同的逻辑转换关系将服务器获取的数据转换为客户端能够适配的数据,即使服务器升级或逻辑发生变化,客户端也不需要对应升级或改变,解耦了客户端与服务端API之间的业务依赖,减轻了客户端的开发压力。
如图3所示,在一个实施例中,提供了一种应用页面显示的原理图,具体内容如下:
当用户启动客户端应用时,首先会初始化应用为空白页面,向适配层发送首页页面数据请求,适配层通过API向服务端请求首页页面数据,并返回组成首页的子页面列表,客户端对组成首页的子页面进行逐一渲染,显示首页内容。当用户点击首页页面元素时,根据用户的点击操作调转至该页面元素跳转至对应页面,具体过程为当用户触发元素的点击操作时,向适配层发送跳转页面对应的页面数据请求,适配层根据页面数据请求向服务器请求API数据并生成对应的页面列表返回至客户端,客户端对接收到的页面列表进行渲染,显示跳转之后的页面。按照上述页面显示原理,完成客户端应用页面的显示。
在其他实施例中,还可以在适配层和客户端之间增加负载均衡层,负载均衡通过ELB(Elastic Load Balancing,弹性负载平衡)和Nginx(Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行)实现,将客户端请求均衡的分发到多台适配服务器上。
如图4所示,以Android系统客户端为例,在一个实施例中,提供一种应用页面显示方法,包括以下内容:
步骤410,适配层接收客户端发送的应用首页页面数据请求,首页页面数据请求携带首页页面标识。
本实施例中,适配层也即Android系统中的adapter层,用于连接后端数据与前端显示的适配器接口,将适配层设置在服务器端,用来完成应用界面的预渲染工作,预渲染工作是指在将图像页面渲染成UI之前的准备工作,如对应用页面的图形界面的排版、文字内容的填写、图片的选取等工作。
本实施例中,预先在客户端定义不同的应用页面显示样式,对建立对应的标签用于触发应用跳转至不同的页面,并针对不同的页面使用不同的页面标识用于获取对应的页面内容。
本实施例中,当用户打开应用客户端时,首先对客户端进行初始化,并根据初始化空白页面标识获取对应的首页页面数据,即客户端向适配层发送首页页面数据请求,该请求携带首页页面对应的页面标识。
步骤420,适配层根据首页页面标识获取对应的页面元素描述,首页页面元素描述是指对首页页面内容包含的页面元素的定义。
本实施例中,适配层预先对首页页面标识对应的页面内容进行页面元素的定义。当适配层接收到客户端发送的页面数据请求时,根据对应的页面标识获取对应的页面内容中各个元素的定义。
具体的,适配层预先定义页面标识,并在对应的页面标识下对页面元素添加描述,对客户端发送携带页面标识的数据请求时,适配层根据页面标识找到对应的样式,用action定义这个页面被点击时的行为,如用户打开客户端则对应的点击行为为跳转至首页页面,通过annotationList对页面元素进行字段的描述,即首页页面具体显示的内容。
以一个音乐应用为例,预先定义首页页面标识为100,适配层预先定义页面标识为100对应的点击行为为显示首页页面为带有搜索、本地音乐、个人信息设置以及在线音乐四个标签的页面,首次跳转至在线音乐界面,并通过annotationList对在线音乐页面中包含的元素进行描述。
步骤430,适配层根据首页页面描述向服务器发送对应的页面数据请求,获取服务器返回的首页页面数据。
本实施例中,预先在适配层中建立首页页面标识对应的页面元素描述,页面元素描述中的具体信息需要从服务器获取相应数据,因此适配层根据页面元素描述向服务器发送相应的数据请求,并获取服务器返回的首页页面数据。
具体的,如图5所示,在线音乐中的音乐数据,比如音乐对应的封面图片数据需要从服务器中获取,适配层预先在页面元素描述中定义了“stringValue”:http:// img.snappea.com/img/em-video/b9115ae1543da03a39d76c7edBe0364b_165_80.jpg,用来定义该音乐对应的封面图片在服务器中对应的网络地址。适配层根据该页面元素定义向服务器发起对应的API数据请求,服务器根据该数据请求获取上述网址对应的图片数据信息返回至适配层。
步骤440,适配层对从服务器获取的首页页面数据进行转换,将转换后的首页页面数据生成首页页面内容发送至客户端,以使客户端对首页页面内容进行显示。
本实施例中,适配层与客户端之间预先定义页面数据和接口,与服务器API返回的页面数据不适配,因此适配层首先将获取的服务器返回的页面数据转换成客户端能够适配的页面数据,然后将转换后的页面数据结合页面元素描述生成对应的首页页面内容发送至客户端,以使客户端按照预设页面样式对首页页面内容进行显示。即使服务端数据逻辑发生变化或者服务器进行升级,通过适配层的转换,客户端不需要做相应改变,解耦了客户端与服务器之间的业务依赖。
具体的,适配层根据页面元素描述向服务端发送不同的API数据请求以获取在线音乐页面中的歌曲的图片数据信息,将服务器返回的歌曲对应的图像数据转换成客户端能够显示的图像数据,并结合对应的页面元素描述如在线音乐页面对应歌曲的名称、歌手姓名等,组合成完整的在线音乐页面内容,同时结合页面元素描述中对应的本地音乐、搜索和个人信息设置对应的标签组合成如图5所示的首页页面内容发送至客户端,客户端将接收到的页面内容进行渲染,即将页面信息转换成用户界面以预设页面样式进行显示。即用户打开应用客户端显示的首页页面为如图5所示的页面,其中包括搜索标签510、本地音乐标签520、个人信息设置标签530以及在线音乐标签540,以及在线音乐标签对应的包括多个子页面541的在线音乐页面。
步骤450,适配层获取客户端发送的子页面数据请求,获取对应的子页面对应的子页面标识。
本实施例中,应用页面包括原子页面和容器页面,原子页面不包括其他页面,容器页面嵌套有其他页面,客户端首页页面为容器页面包括多个子页面,当将客户端页面由首页页面跳转至其他页面时,客户端发送子页面数据请求至适配层。适配层预先定义页面元素时,对应不同的元素定义了不同的触发指令,当用户点击相应的元素时便会触发相应的操作,从而客户端根据对应的操作向适配层发出对应的页面数据请求以实现应用页面之间的跳转。
具体的,当用户点击如图5所示的应用页面时,如点击在线音乐页面中的某个子页面中的歌手姓名,客户端应用页面将发生跳转,客户端向适配层发送对应的子页面数据请求并携带该子页面对应的页面标识,适配层获取对应的子页面的页面标识。
步骤460,适配层根据子页面标识获取对应的子页面元素描述,并向服务器发送相应的页面数据请求。
本实施例中,适配层预先根据页面标识对所有携带标识的页面进行了页面元素描述。因此,适配层能够根据客户端发送的子页面数据请求获取对应的子页面元素描述,并向服务器发送相应的API数据请求。
具体的,当用户点击图5中热门歌手541对应的子页面中的元素歌手A时,应用页面将跳转至对应的歌手A相关页面,适配层根据接收的子页面数据请求获取对应的歌手页面元素描述。适配层预先建立歌手A对应的页面内容包括概览、专辑、歌曲三个标签,每一个标签对应不同的应用页面,具体的,如图6所示,概览页面600包括四个子页面,分别是艺人部分610、歌曲620、专辑630、大家也在搜640,每一个子页面对应一个页面标识。艺人部分为一个原子页面没有子页面,其他三个都嵌套了多个子页面。歌曲页面以歌曲列表的形式进行显示,歌曲列表中的每一个歌曲为一个子页面,每一个子页面均用页面标识进行标记。专辑页面以专辑列表的形式进行显示,专辑列表中的每一个专辑为一个子页面,每一个子页面均用页面标识进行标记。上述每个子页面均根据其页面标识预先进行了页面元素的定义。
进一步的,适配层预先对概览页面中的元素进行描述,通过subcardList描述歌曲、专辑、大家也在搜、艺人部分的具体元素定义,并进一步通过subcardList描述歌曲、专辑、大家也在搜包含的子页面元素的定义。
进一步的,适配层对歌曲标签对应的歌曲页面700中的页面元素进行描述,歌曲页面700对应的歌曲列表中的每一个歌曲对应一个页面元素描述,如歌曲X对应的子页面元素包括六个元素的定义,第一个是名称X、第二个是图片711、第三个是视频时长、第四个是专辑的名字及发布时间M-2016、第五个是下载按钮712对应的触发行为;subcardList为null表示没有子卡片。当适配层接收到客户端发送的携带页面标识的歌曲页面数据请求时,查找该歌曲页面标识对应的页面元素描述,即名称、图片、视频时长、专辑名字、下载按钮的触发行为以及是否有子页面的具体信息定义。
适配层根据上述对歌手对应页面元素的定义向服务器发送相应的页面数据请求,如定义概览页面中艺人部分的艺人图片的网址,通过向服务器发送对应的数据请求。
步骤470,适配层获取服务器返回的子页面数据,并将子页面数据以列表或组合形式生成对应的页面内容并发送至客户端,以使客户端跳转至对应的应用页面进行显示。
本实施例中,适配层获取服务器返回的子页面数据,根据子页面数据信息以及对应的子页面元素的定义,获取相应子页面的详细信息并根据客户端数据请求将子页面数据以列表或者组合的形式生成对应的页面内容。
具体的,若预先定义在应用首页点击热门歌手页面541中的歌手元素时,对应的跳转操作是跳转至歌手页面对应的概览页面600,则在用户在图5所示的应用首页页面点击歌手元素时,客户端显示歌手概览页面600,如图6所示,概览页面600是由多个子页面组合而成,并且每个子页面又包括多个子页面,因此将页面数据以组合嵌套的形式发送至客户端,以满足客户端应用概览页面对页面内容的显示页面样式的要求,对概览页面600按图6所示的样式进行显示。
若预先定义在应用首页点击热门歌手页面541中的歌手元素时,对应的跳转操作是跳转至歌手页面对应的歌曲页面,则在用户在如图5所示的应用首页页面点击歌手元素时,客户端显示歌手歌曲页面。如图7所示,歌曲页面700由多个具体歌曲页面列表组成,客户端在发送页面数据请求时,请求歌曲列表数据,因此适配层将获取的不同的歌曲对应的子页面如子页面710、720、730并以列表的形式生成对应的页面内容并发送至客户端,以使客户端以预设的歌曲页面列表的样式对歌曲页面进行显示,最终显示结果如图7所示。
在其他实施例中,当从客户端首页页面跳转至歌手页面时,对歌手页面中的信息进行更新时,只需要对适配层中对应的页面元素描述进行修改或更新,当适配层更新完成后,当用户打开应用客户端点击相应的页面时,在客户端显示的页面即为更新后的应用页面,不需要更新客户端。
具体的,比如图7中更新前每一个歌曲页面对应的页面元素描述中下载按钮712的触发行为为对歌曲进行下载,可以通过更改按钮描述将下载按钮修改成播放按钮,即当客户端再次获取对应的页面时,点击相应按钮712即对歌曲进行播放,不需要修改客户端;或者将图6中的大家也在搜对应的页面640替换为其他子页面内容,也只需要改变适配层中页面元素描述对应的子页面内容即可获取不同的页面进行显示,不需要改变客户端,提高了开发效率。
在其他实施例中,预先根据应用发展趋势在客户端预埋页面样式,当需要添加新增功能或对现有功能进行改进时,可以启用预埋的页面样式。具体的,例如概览页面预先定义的页面样式为包括四个子页面,按照从上至下的顺序排列,之后概览页面可能会增加新的功能,因此可以预埋包括更多子页面的样式,比如在概览页面增加艺人相关视频模块,即可启用预埋的页面样式,不需要对客户端进行更新。实现不同页面之间的跳转逻辑,使客户端根据应用页面跳转需求进行跳转。降低了客户端更新频率,有效的提高了开发效率。
如图8所示,在一个实施例中,提供一种应用页面显示装置,包括:
第一接收模块810,用于适配层接收客户端发送的页面数据请求,页面数据请求携带页面标识;
第一获取模块820,用于适配层根据页面标识获取对应的页面元素描述,页面元素描述是指对页面内容包含的页面元素的定义;
第一数据请求模块830,用于适配层根据页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据;
第一发送模块840,用于适配层根据页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
上述应用页面显示装置,在客户端与服务器之间抽象出适配层,由客户端、适配层与服务器共同实现应用功能,应用页面显示的具体内容均由适配层定义,服务器根据适配层的需求提供数据,客户端只负责将适配层返回的页面内容以预先设置的页面样式进行显示,当应用需要升级或者改变部分界面内容时,只需要在适配层改变相应页面元素描述即可,不需要频繁升级客户端,提高了开发的灵活性以及产品的更新速度。
在一个实施例中,页面元素包括图形、文字、超链接网址以及子页面中的至少一种;第一数据请求模块830还用于当适配层检测到页面元素描述包括对子页面的定义时,获取子页面对应的子页面标识,并根据子页面标识获取对应的子页面元素描述;适配层根据子页面元素描述向服务器发送对应的数据请求,并获取从服务端返回的子页面数据。
在一个实施例中,第一发送模块840还用于适配层将获取的不同的子页面数据以列表或组合的形式生成对应的页面内容;将页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
如图9所示,在一个实施例中,应用页面显示装置还包括:
更新模块910,用于适配层根据应用升级需求,更新页面标识对应的页面元素描述;
第二接收模块920,当适配层接收到客户端发送的页面数据请求时,根据页面数据请求携带的页面标识获取更新后的页面元素描述;
第二数据请求模块930,适配层根据更新后的页面元素描述向服务器发送数据请求,获取服务器发送的页面数据;
第二发送模块940,适配层根据服务器发送的页面数据生成更新后的页面内容并发送至客户端,以使客户端以预设的页面样式对更新后的页面内容进行显示。
在一个实施例中,第一发送模块840还用于适配层根据预先定义的转换关系将从服务器获取的页面数据的数据类型进行转换;将转换后的页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对页面内容进行显示。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种应用页面显示方法,其特征在于,所述方法包括:
适配层接收客户端发送的页面数据请求,所述页面数据请求携带页面标识;
适配层根据所述页面标识获取对应的页面元素描述,所述页面元素描述是指对页面内容包含的页面元素的定义;
适配层根据所述页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据;
适配层根据所述页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对所述页面内容进行显示。
2.根据权利要求1所述的方法,其特征在于,所述页面元素包括图形、文字、超链接网址以及子页面中的至少一种;适配层根据所述页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据包括:
当适配层检测到所述页面元素描述包括对子页面的定义时,获取所述子页面对应的子页面标识,并根据所述子页面标识获取对应的子页面元素描述;
适配层根据所述子页面元素描述向服务器发送对应的数据请求,并获取从服务端返回的子页面数据。
3.根据权利要求2所述的方法,其特征在于,所述适配层根据所述页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对所述页面内容进行显示,包括:
适配层将获取的不同的子页面数据以列表或组合的形式生成对应的页面内容;
将所述页面内容发送至客户端,以使客户端根据预设的页面样式对所述页面内容进行显示。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
适配层根据应用升级需求,更新所述页面标识对应的页面元素描述;
当适配层接收到客户端发送的页面数据请求时,根据所述页面数据请求携带的页面标识获取更新后的页面元素描述;
适配层根据更新后的页面元素描述向服务器发送数据请求,获取服务器发送的页面数据;
适配层根据服务器发送的页面数据生成更新后的页面内容并发送至客户端,以使客户端以预设的页面样式对更新后的页面内容进行显示。
5.根据权利要求1所述的方法,其特征在于,所述适配层根据所述页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对所述页面内容进行显示,包括:
适配层根据预先定义的转换关系将从服务器获取的页面数据的数据类型进行转换;
将转换后的页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对所述页面内容进行显示。
6.一种应用页面显示装置,其特征在于,所述装置包括:
第一接收模块,用于适配层接收客户端发送的页面数据请求,所述页面数据请求携带页面标识;
第一获取模块,用于适配层根据所述页面标识获取对应的页面元素描述,所述页面元素描述是指对页面内容包含的页面元素的定义;
第一数据请求模块,用于适配层根据所述页面元素描述向服务器发送对应的数据请求,并获取服务器返回的页面数据;
第一发送模块,用于适配层根据所述页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对所述页面内容进行显示。
7.根据权利要求6所述的装置,其特征在于,所述页面元素包括图形、文字、超链接网址以及子页面中的至少一种;所述第一数据请求模块还用于当适配层检测到所述页面元素描述包括对子页面的定义时,获取所述子页面对应的子页面标识,并根据所述子页面标识获取对应的子页面元素描述;适配层根据所述子页面元素描述向服务器发送对应的数据请求,并获取从服务端返回的子页面数据。
8.根据权利要求7所述的装置,其特征在于,所述第一发送模块还用于适配层将获取的不同的子页面数据以列表或组合的形式生成对应的页面内容;将所述页面内容发送至客户端,以使客户端根据预设的页面样式对所述页面内容进行显示。
9.根据权利要求6所述的方法,其特征在于,所述装置还包括:
更新模块,用于适配层根据应用升级需求,更新所述页面标识对应的页面元素描述;
第二接收模块,当适配层接收到客户端发送的页面数据请求时,根据所述页面数据请求携带的页面标识获取更新后的页面元素描述;
第二数据请求模块,适配层根据更新后的页面元素描述向服务器发送数据请求,获取服务器发送的页面数据;
第二发送模块,适配层根据服务器发送的页面数据生成更新后的页面内容并发送至客户端,以使客户端以预设的页面样式对更新后的页面内容进行显示。
10.根据权利要求6所述的装置,其特征在于,所述第一发送模块还用于适配层根据预先定义的转换关系将从服务器获取的页面数据的数据类型进行转换;将转换后的页面数据生成对应的页面内容发送至客户端,以使客户端根据预设的页面样式对所述页面内容进行显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611267415.0A CN106990949B (zh) | 2016-12-31 | 2016-12-31 | 应用页面显示方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611267415.0A CN106990949B (zh) | 2016-12-31 | 2016-12-31 | 应用页面显示方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106990949A true CN106990949A (zh) | 2017-07-28 |
CN106990949B CN106990949B (zh) | 2021-06-18 |
Family
ID=59414320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611267415.0A Active CN106990949B (zh) | 2016-12-31 | 2016-12-31 | 应用页面显示方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106990949B (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107276838A (zh) * | 2017-08-18 | 2017-10-20 | 无锡江南影视传播有限公司 | 一种用户界面显示控制方法、装置及系统 |
CN108763511A (zh) * | 2018-05-30 | 2018-11-06 | 腾讯科技(深圳)有限公司 | 页面中图层排版方法、装置、电子设备及存储介质 |
CN109284458A (zh) * | 2018-09-28 | 2019-01-29 | 平安普惠企业管理有限公司 | 网页显示方法、装置、计算机设备及存储介质 |
CN109408086A (zh) * | 2018-09-28 | 2019-03-01 | 平安普惠企业管理有限公司 | App的界面更新方法、装置、计算机设备及存储介质 |
CN109426541A (zh) * | 2017-08-31 | 2019-03-05 | 阿里巴巴集团控股有限公司 | 一种页面换肤的方法和装置 |
CN110069309A (zh) * | 2019-04-23 | 2019-07-30 | 广州华多网络科技有限公司 | 一种页面配置方法、系统及客户端 |
CN110457032A (zh) * | 2018-05-08 | 2019-11-15 | 阿里巴巴集团控股有限公司 | 数据对象信息界面生成、展示方法及装置 |
CN110569097A (zh) * | 2019-08-26 | 2019-12-13 | 北京奇艺世纪科技有限公司 | 一种信息显示方法及装置 |
CN110609966A (zh) * | 2018-05-29 | 2019-12-24 | 阿里巴巴集团控股有限公司 | 一种页面显示方法、装置及其设备 |
CN111324350A (zh) * | 2020-01-21 | 2020-06-23 | 上海悦易网络信息技术有限公司 | 页面显示方法及设备 |
CN112215921A (zh) * | 2020-10-12 | 2021-01-12 | 广州欢网科技有限责任公司 | 一种海报自动获取方法、装置、设备及及计算机存储介质 |
CN112506479A (zh) * | 2020-11-30 | 2021-03-16 | 北京百度网讯科技有限公司 | 页面编辑的方法、装置、设备以及存储介质 |
CN113094139A (zh) * | 2021-04-20 | 2021-07-09 | 北京沃东天骏信息技术有限公司 | Ui样式更新方法和装置 |
CN116484132A (zh) * | 2023-06-26 | 2023-07-25 | 北京轻松筹信息技术有限公司 | 一种渲染页面的方法、装置、设备和可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140298313A1 (en) * | 2013-01-07 | 2014-10-02 | Tencent Technology (Shenzhen) Company Limited | Method, server, client and system for updating data |
CN105404622A (zh) * | 2014-08-20 | 2016-03-16 | 阿里巴巴集团控股有限公司 | 一种客户端页面显示方法、装置及系统 |
CN105574049A (zh) * | 2014-10-30 | 2016-05-11 | 阿里巴巴集团控股有限公司 | 移动应用的页面处理方法、装置和系统 |
CN106096064A (zh) * | 2016-07-19 | 2016-11-09 | 百度在线网络技术(北京)有限公司 | 用于生成页面的方法和装置 |
-
2016
- 2016-12-31 CN CN201611267415.0A patent/CN106990949B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140298313A1 (en) * | 2013-01-07 | 2014-10-02 | Tencent Technology (Shenzhen) Company Limited | Method, server, client and system for updating data |
CN105404622A (zh) * | 2014-08-20 | 2016-03-16 | 阿里巴巴集团控股有限公司 | 一种客户端页面显示方法、装置及系统 |
CN105574049A (zh) * | 2014-10-30 | 2016-05-11 | 阿里巴巴集团控股有限公司 | 移动应用的页面处理方法、装置和系统 |
CN106096064A (zh) * | 2016-07-19 | 2016-11-09 | 百度在线网络技术(北京)有限公司 | 用于生成页面的方法和装置 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107276838A (zh) * | 2017-08-18 | 2017-10-20 | 无锡江南影视传播有限公司 | 一种用户界面显示控制方法、装置及系统 |
CN109426541A (zh) * | 2017-08-31 | 2019-03-05 | 阿里巴巴集团控股有限公司 | 一种页面换肤的方法和装置 |
CN110457032B (zh) * | 2018-05-08 | 2023-09-29 | 浙江天猫技术有限公司 | 数据对象信息界面生成、展示方法及装置 |
CN110457032A (zh) * | 2018-05-08 | 2019-11-15 | 阿里巴巴集团控股有限公司 | 数据对象信息界面生成、展示方法及装置 |
CN110609966A (zh) * | 2018-05-29 | 2019-12-24 | 阿里巴巴集团控股有限公司 | 一种页面显示方法、装置及其设备 |
CN110609966B (zh) * | 2018-05-29 | 2023-06-06 | 阿里巴巴集团控股有限公司 | 一种页面显示方法、装置及其设备 |
CN108763511A (zh) * | 2018-05-30 | 2018-11-06 | 腾讯科技(深圳)有限公司 | 页面中图层排版方法、装置、电子设备及存储介质 |
CN109408086A (zh) * | 2018-09-28 | 2019-03-01 | 平安普惠企业管理有限公司 | App的界面更新方法、装置、计算机设备及存储介质 |
CN109284458A (zh) * | 2018-09-28 | 2019-01-29 | 平安普惠企业管理有限公司 | 网页显示方法、装置、计算机设备及存储介质 |
CN110069309A (zh) * | 2019-04-23 | 2019-07-30 | 广州华多网络科技有限公司 | 一种页面配置方法、系统及客户端 |
CN110569097A (zh) * | 2019-08-26 | 2019-12-13 | 北京奇艺世纪科技有限公司 | 一种信息显示方法及装置 |
CN111324350A (zh) * | 2020-01-21 | 2020-06-23 | 上海悦易网络信息技术有限公司 | 页面显示方法及设备 |
CN112215921A (zh) * | 2020-10-12 | 2021-01-12 | 广州欢网科技有限责任公司 | 一种海报自动获取方法、装置、设备及及计算机存储介质 |
CN112506479A (zh) * | 2020-11-30 | 2021-03-16 | 北京百度网讯科技有限公司 | 页面编辑的方法、装置、设备以及存储介质 |
CN112506479B (zh) * | 2020-11-30 | 2024-03-01 | 北京百度网讯科技有限公司 | 页面编辑的方法、装置、设备以及存储介质 |
CN113094139A (zh) * | 2021-04-20 | 2021-07-09 | 北京沃东天骏信息技术有限公司 | Ui样式更新方法和装置 |
CN113094139B (zh) * | 2021-04-20 | 2024-04-19 | 北京沃东天骏信息技术有限公司 | Ui样式更新方法和装置 |
CN116484132A (zh) * | 2023-06-26 | 2023-07-25 | 北京轻松筹信息技术有限公司 | 一种渲染页面的方法、装置、设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106990949B (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106990949A (zh) | 应用页面显示方法和装置 | |
CN106528432B (zh) | 测试场景数据的构建方法及装置、埋点测试方法 | |
US6731314B1 (en) | Network-based three-dimensional multiple-user shared environment apparatus and method | |
US9369545B2 (en) | Accessing and displaying network content | |
CN105009070B (zh) | 计算机应用促进 | |
CN108089878A (zh) | 页面信息展现和生成方法、装置及系统 | |
CN108306814A (zh) | 基于即时通讯的信息推送方法、装置、终端及存储介质 | |
US20090070207A1 (en) | Electronic coupon display system and method | |
US20140310333A1 (en) | System and method for delivering remotely stored applications and information | |
Lopuck | Web design for dummies | |
TW201237794A (en) | Enabling advertisers to bid on abstract objects | |
CN110366041A (zh) | 媒体数据分享方法、装置及设备 | |
CN104838632A (zh) | 用于转移定制型情境用户界面的方法及系统 | |
CN103562908B (zh) | 利用不同文件宿主实现文件访问的方法和计算设备 | |
CN108369709A (zh) | 基于网络的广告数据业务时延减小 | |
CN108055320B (zh) | 资源下载的处理方法、终端设备及计算机可读存储介质 | |
CN103827778B (zh) | 企业工具增强 | |
WO2020215977A1 (zh) | 用于展示信息的系统、方法及装置 | |
US20040098349A1 (en) | Method and apparatus for a portable information account access agent | |
US20040056878A1 (en) | Digital assistants | |
US20180039998A1 (en) | Automated Integration of Partner Products | |
CN104822072B (zh) | 推送视频的播放控制方法和播放系统以及客户端和服务器 | |
Hussain et al. | Adaptive user interface and user experience based authoring tool for recommendation systems | |
CN110286991A (zh) | 一种信息处理方法及装置 | |
US9508078B1 (en) | Link creation techniques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |