CN106936871A - 界面展示数据的方法及装置 - Google Patents

界面展示数据的方法及装置 Download PDF

Info

Publication number
CN106936871A
CN106936871A CN201511021196.3A CN201511021196A CN106936871A CN 106936871 A CN106936871 A CN 106936871A CN 201511021196 A CN201511021196 A CN 201511021196A CN 106936871 A CN106936871 A CN 106936871A
Authority
CN
China
Prior art keywords
data
client
interface
interface template
service end
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
Application number
CN201511021196.3A
Other languages
English (en)
Other versions
CN106936871B (zh
Inventor
贺三元
饶俊学
王飞
翁粤东
朱德亮
孙熙
文雪龙
徐文婷
陈锐
习江波
邓旭峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority to CN201511021196.3A priority Critical patent/CN106936871B/zh
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to SG11201805617SA priority patent/SG11201805617SA/en
Priority to JP2018534860A priority patent/JP6755954B2/ja
Priority to ES16880972T priority patent/ES2808924T3/es
Priority to EP16880972.1A priority patent/EP3399721B1/en
Priority to AU2016382741A priority patent/AU2016382741B2/en
Priority to PL16880972T priority patent/PL3399721T3/pl
Priority to KR1020187022016A priority patent/KR102105261B1/ko
Priority to MYPI2018001216A priority patent/MY186876A/en
Priority to PCT/CN2016/110259 priority patent/WO2017114182A1/zh
Publication of CN106936871A publication Critical patent/CN106936871A/zh
Priority to US16/019,716 priority patent/US11216610B2/en
Priority to PH12018501401A priority patent/PH12018501401A1/en
Application granted granted Critical
Publication of CN106936871B publication Critical patent/CN106936871B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)

Abstract

本申请公开了界面展示数据的方法及装置,该方法将服务端下发的界面模板的结构化数据解析成虚拟视图节点,所述界面模板的结构化数据由服务端对通用协议标记语言编写的界面模板数据解析后生成,所述界面模板数据包括用于描述控件的通用标签;将业务数据和所述虚拟视图节点绑定;根据绑定业务数据后的虚拟视图节点计算所述控件的位置信息;根据所述控件的位置信息渲染视图。本申请能够动态更新客户端的界面。

Description

界面展示数据的方法及装置
技术领域
本申请涉及客户端数据显示技术,尤其涉及界面展示数据的方法和装置。
背景技术
应用程序客户端的界面框架通常是采用原生代码编写的,界面框架根据业务需求预先指定后是固定不变的,每个界面的框架和样式是与所对应的业务数据结构相适应的。如果需要根据业务变更改变界面框架,或者为了增加新业务数据而增加新的界面框架,通常需要重新编译应用程序客户端,并重新下载安装应用程序客户端,如果用户不更新客户端,则变更或增加的业务数据将无法呈现给用户。
发明内容
本申请提供界面展示数据的方法和装置,能够动态更新客户端的界面。
根据本申请实施例的第一方面,提供一种界面展示数据的方法,运行于客户端,该方法包括步骤:
将服务端下发的界面模板的结构化数据解析成虚拟视图节点,所述界面模板的结构化数据由服务端对通用协议标记语言编写的界面模板数据解析后生成,所述界面模板数据包括用于描述控件的通用标签;
将业务数据和所述虚拟视图节点绑定;
根据绑定业务数据后的虚拟视图节点计算所述控件的位置信息;
根据所述控件的位置信息渲染视图。
根据本申请实施例的第二方面,提供一种界面展示数据的方法,运行于服务端,该方法包括步骤:
将通用协议标记语言编写的界面模板数据解析成结构化数据;所述界面模板数据包括用于描述控件的通用标签;
将所述结构化数据下发给客户端,以使所述客户端将所述控件渲染成视图。
根据本申请实施例的第三方面,提供一种界面展示数据的装置,位于客户端,包括:
解析引擎模块,用于将服务器下发的界面模板的结构化数据解析成虚拟视图节点,所述界面模板的结构化数据由服务端对通用协议标记语言编写的界面模板数据解析后生成,所述界面模板数据包括用于描述控件的通用标签;
绑定模块,用于将业务数据和所述虚拟视图节点绑定;
布局引擎模块,用于根据绑定业务数据后的虚拟视图节点计算所述控件的位置信息;
渲染引擎模块,用于根据所述控件的位置信息渲染视图。
根据本申请实施例的第四方面,提供一种界面展示数据的装置,位于服务端,包括:
解析引擎模块,用于将通用协议标记语言编写的界面模板数据解析成结构化数据;所述界面模板数据包括用于描述控件的通用标签;
通信模块,用于将所述结构化数据下发给客户端,以使所述客户端将所述控件渲染成视图。
本申请通过界面模板技术而不是原生代码来实现客户端的界面框架,并相应的提供了客户端通过界面模板实现展示业务数据的解决方案,不仅做到在不更新客户端的情况下更新界面,而且,通过服务端将界面模板数据解析成结构化数据,使得开发人员可以通过通用标记语言设计界面模板,因此消除了开发人员学习私有协议的门槛,使得本申请的方案更具有通用性。
附图说明
图1为本申请实施例中界面展示数据的方法的流程图;
图2为本申请应用实例中信息交互的时序图;
图3为本申请实施例中界面展示数据的装置的硬件架构图;
图4为本申请一实施例中界面展示数据的装置的软件逻辑框图;
图5为本申请另一实施例中界面展示数据的装置的软件逻辑框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请中可以做到界面模板和应用程序客户端分离,以方便界面模板的动态更新,并且允许程序开发人员基于通用协议标记语言来编写界面模板。应用程序客户端可以装载于各种智能设备上,例如移动终端、平板电脑、电脑等。本方案不限制智能设备上操作系统的类型,例如操作系统可以是iOS系统、android系统、windows系统、OS X系统等。
通用协议标记语言可以是HTML(HyperText Markup Language,超文本标记语言),当然不排除其他适合于制作界面的标准通用协议定义的语言。
界面模板在本申请中是指某一界面中包含若干个通用元素的布局关系、显示样式以及操作控制逻辑等,但不包含业务数据的界面框架,可以通过HTML、CSS(Cascading Style Sheets,层叠样式表)和JS(Javascript脚本)来实现。通用元素可以包括HTML源代码中的界面模板数据的通用标签,通过通用标签来描述控件。例如Body标签、Div标签、Title标签、Label标签、Img标签等等。通用元素还可以包含表达显示样式的元素,显示样式可以通过CSS来实现,通过CSS为HTML编写的界面定义布局,当然,并不排除通过其他方式来定义界面布局。可以通过JS来控制通用标签的显示内容、展示效果、布局关系的调整,以及处理用户操作。
程序开发人员所编写的界面模板配置到服务端后,服务端将界面模板数据转换为界面模板的结构化数据,并将该界面模板的结构化数据发给客户端;请参见图1,客户端收到结构化数据后的工作过程可以包括:
S101,客户端将服务端发送的界面模板的结构化数据解析成虚拟视图节点;
S102,将业务数据和虚拟视图节点绑定;
S103,根据绑定业务数据后的虚拟视图节点计算控件的位置信息;
S104,根据控件的位置信息渲染视图。
对于服务端的工作过程,可以包括对界面模板数据的转换过程、界面模板的结构化数据的分发过程、与客户端交互业务数据的过程。
为了解决HTML的解析性能较差的问题,服务端将界面模板数据发给客户端之前,先在服务端解析成结构化数据,然后再发给客户端,避免了客户端解析HTML的过程。所选择的结构化数据可以是结构紧凑,且可以直接表达对象型的数据结构,例如JSON格式,XML格式。以JSON格式为例,HTML可以被解析成DOM(Document Object Mode,文档对象模型),DOM节点存储HTML的通用标签的相关信息,DOM节点描述了通用标签所描述的控件在界面中的相对位置。由于JSON格式的语法树会比HTML简单很多,因此客户端对JSON格式的数据的解析效率比HTML数据高很多。
每个界面模板具有唯一的界面标识,以区分不同的界面模板。界面模板数据解析成结构化数据后将被服务端分发给客户端,以便客户端后续展现业务数据使用,界面模板的结构化数据中包含界面标识。
更新后的界面模板分发给客户端的过程可以因实际的业务场景不同而有不同。例如,服务端可以在界面模板被更新后主动向客户端分发新的界面模板解析后的结构化数据,也可以根据客户端的请求向客户端分发等等。
客户端的工作过程可以包括对界面模板的结构化数据的解析和存储过程、与服务端交互业务数据的过程、将业务数据与界面模板绑定的过程、渲染视图的过程。
界面模板的结构化数据被服务端发送到客户端后,客户端将界面模板的结构化数据进行解析,生成树结构的虚拟视图节点进行存储,每个虚拟视图节点可以存储有HTML中DOM节点的基本信息,例如通用标签的相关信息等,同时还可以包含对应的应用程序客户端中的类型信息和应用程序客户端中响应事件的信息等,通过虚拟视图节点可以计算出HTML通用标签所描述的控件的位置信息。
当触发业务数据的交互流程后,客户端从服务端获取业务数据,服务端下发业务数据时可以将该业务数据所对应的模板标识一同下发给客户端。
作为一个例子,将业务数据与界面模板绑定的过程可以是通过JS引擎驱动界面模板中的JS脚本实现,业务数据交给JS引擎处理,JS引擎执行JS脚本将业务数据插入到相应的虚拟视图节点。例如,可以参照以下过程:1.对于设备操作系统(例如iOS系统、android系统等操作系统)的原生代码(以下称为Native)中的属性和方法,如果在界面模板的JS中不存在这些属性和方法,则可以扩展JS引擎的接口,将这些Native的属性和方法绑定给JS引擎;扩展的JS引擎的接口可以包括例如接收并处理业务数据的JS入口函数、调用Native渲染引擎的接口等;2、JS引擎将业务数据传给JS入口函数;3、通过JS入口函数将业务数据插入相应的虚拟视图节点。
在一个例子中,可以通过JS引擎、调用Native的渲染引擎的接口来通知渲染引擎触发渲染视图的过程。对于客户端渲染视图的过程可以存在多种方式,例如,可以每计算出一个控件的位置信息后将该控件渲染在视图的相应位置,此时对于用户来说,界面呈现效果是各个控件逐一呈现。在另一个例子中,可以在内存中计算出整张视图中的所有控件的位置信息后,从内存中取出所有控件的位置信息,将所有控件一并渲染成视图,呈现给用户完整的视图,可以大大缩减视图渲染的时间。
对于客户端从服务端获得的界面模板的结构化数据,可以存在更新的过程。更新后的界面模板的结构化数据发送给客户端的流程可以根据不同的业务场景设计不同的实现流程,例如,可以在服务端更新界面模板后主动将结构化数据推送给客户端,或者,在客户端触发业务流程后,业务数据需要利用新界面模板呈现时向服务端请求,因此作为一个例子,向服务端索取新界面模板的结构化数据的过程可以包括:当客户端从服务端获取到业务数据后,可以根据业务数据中的界面标识查找业务数据对应的界面模板,如果查找不到,则向服务端请求该界面标识所对应的界面模板的结构化数据。
客户端收到更新后的结构化数据后重新执行将结构化数据解析成虚拟视图节点,更新虚拟视图节点所存储的相关信息。虚拟视图节点根据更新后的信息与业务数据绑定,以及将绑定业务数据后的虚拟视图节点通过调用Native渲染引擎的接口交给渲染引擎重绘视图。
以下是一个应用场景中实现本方案的实例。本应用实例中根据功能不同,将客户端划分为业务客户端和界面客户端;服务端划分为业务服务端和界面服务端。业务客户端和界面客户端可以被集成装载于移动终端的同一个App上。界面服务端包括HTML解析引擎、界面模板管理模块,界面客户端包括界面模板的结构化数据解析引擎、JS引擎、布局引擎和渲染引擎。
参见图2,在阶段201,服务器对界面模板数据进行预处理。
服务器通过HTML解析引擎将界面模板数据解析成基于JSON格式结构数据,界面模板数据中的HTML通用标签、与通用标签关联的CSS属性和JS脚本解析后以DOM树节点的形式被存储于界面模板管理模块的同一个JSON文件中;界面模板管理模块对这些JSON文件进行增删改的管理。
在阶段202,界面客户端对界面模板的JSON数据进行解析。
界面客户端收到界面模板的JSON数据后,通过界面模板的结构化数据解析引擎将界面模板的JSON数据解析虚拟视图节点;界面模板的DOM节点的基本信息及应用程序中的类型信息和应用程序中响应事件的信息等信息被存储于虚拟视图节点中。
在阶段203,业务客户端与业务服务端交互业务数据。
业务客户端向业务服务端发送请求获取业务数据。业务服务端将所需要的业务数据按照预定的格式封装后,并携带界面模板的ID一起,以JSON数据的形式发给业务客户端。
在阶段204,业务数据和虚拟视图节点绑定。
业务客户端收到业务数据后,把业务数据转交给界面客户端的JS引擎处理,界面客户端的JS引擎根据界面模板ID查找对应界面模板的JSON数据,将业务数据传递给界面模板的JS入口函数处理,JS入口函数将业务数据拆分后插入到到相应的虚拟视图节点进行绑定,例如将Body标签相关的业务数据与存储Body标签的虚拟视图节点绑定,将Div标签相关的业务数据与存储Div标签的虚拟视图节点绑定。
在本阶段,如果根据界面模板ID查找不到对应的界面模板的JSON数据,则界面客户端需要重新向界面服务端请求界面模板ID所对应的界面模板的JSON数据。
在阶段205进行布局引擎计算控件位置。
布局引擎通过每个虚拟视图节点存储的信息计算出每个控件的具体位置,并将每个控件的位置信息存储在内存中。
在阶段206进行视图渲染。
在本例中,当计算完所有控件的具体位置后,视图渲染时,通过JS引擎通知渲染引擎进行视图渲染。视图渲染引擎从内存中获取已计算好的整张视图中各个控件的位置,呈现完整的视图。
与前述界面展示数据的方法的实施例相对应,本申请还提供了界面展示数据的装置的实施例。
本申请界面展示数据的装置的实施例可以应用在智能终端和服务器上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在智能终端或服务器的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图3所示,为本申请展示数据的装置所在的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的智能终端或服务器通常根据该智能终端和服务器的实际功能,还可以包括其他硬件,对此不再赘述。
请参考图4,界面展示数据的装置400在一个实施例中可以位于客户端,包括:
解析引擎模块401,可以用于将服务器下发的界面模板的结构化数据解析成虚拟视图节点,界面模板的结构化数据由服务端对通用协议标记语言编写的界面模板数据解析后生成,所述界面模板数据包括用于描述控件的通用标签;
绑定模块402,可以用于将业务数据和所述虚拟视图节点绑定;
布局引擎模块403,可以用于根据绑定业务数据后的虚拟视图节点计算所述控件的位置信息;
渲染引擎模块404,可以用于根据所述控件的位置信息渲染视图。
通用协议标记语言可以为HTML,结构化数据可以为JSON数据或XML数据。
虚拟视图节点所存储的信息可以包括所述通用标签的相关信息、和/或所述所述客户端的类型信息、和/或所述客户端中响应事件的信息。
解析引擎模块401还可以用于当所述客户端接收到更新后的界面模板的结构化数据后,通知所述虚拟视图节点更新所存储的相关信息。
另外,还可以包括业务数据模块405,用于接收服务端下发的业务数据并发给所述解析引擎模块401,以及根据解析引擎模块401的通知向服务端请求业务数据;
解析引擎模块401还可以用于在未查找到与所述业务数据对应的界面模板的结构化数据时,向业务数据模块405发送通知。
渲染引擎模块404根据所述控件的位置信息渲染视图包括:
当布局引擎模块403计算完所有控件的位置信息后,获取所有控件的位置信息,将所有控件一并渲染成视图。
图5是界面展示数据的装置500位于服务端的实施例,包括:
解析引擎模块501,用于将通用协议标记语言编写的界面模板数据解析成结构化数据;所述界面模板数据包括用于描述控件的通用标签;
通信模块502,用于将所述结构化数据下发给客户端,以使所述客户端将所述控件渲染成视图。
通用协议标记语言可以为HTML,结构化数据可以是为JSON数据,通用标签可以存储于JSON数据的DOM节点中。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (16)

1.一种界面展示数据的方法,运行于客户端,其特征在于,该方法包括步骤:
将服务端下发的界面模板的结构化数据解析成虚拟视图节点,所述界面模板的结构化数据由服务端对通用协议标记语言编写的界面模板数据解析后生成,所述界面模板数据包括用于描述控件的通用标签;
将业务数据和所述虚拟视图节点绑定;
根据绑定业务数据后的虚拟视图节点计算所述控件的位置信息;
根据所述控件的位置信息渲染视图。
2.根据权利要求1所述的方法,其特征在于,所述通用协议标记语言为HTML,所述结构化数据为JSON数据或XML数据。
3.根据权利要求1所述的方法,其特征在于,所述虚拟视图节点所存储的信息包括所述通用标签的相关信息、和/或所述所述客户端的类型信息、和/或所述客户端中响应事件的信息。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述客户端接收到更新后的界面模板的结构化数据后,更新所述虚拟视图节点所存储的相关信息。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述客户端从所述服务端获取到所述业务数据后,如果查找不到与所述业务数据对应的界面模板的结构化数据,则向所述服务端请求所述业务数据对应的界面模板的结构化数据。
6.根据权利要求1所述的方法,其特征在于,根据所述控件的位置信息渲染视图包括:
当计算完所有控件的位置信息后,获取所有控件的位置信息,将所有控件一并渲染成视图。
7.一种界面展示数据的方法,运行于服务端,其特征在于,该方法包括步骤:
将通用协议标记语言编写的界面模板数据解析成结构化数据;所述界面模板数据包括用于描述控件的通用标签;
将所述结构化数据下发给客户端,以使所述客户端将所述控件渲染成视图。
8.根据权利要求7所述的方法,其特征在于,所述通用协议标记语言为HTML,所述结构化数据为JSON数据,所述通用标签存储于所述JSON数据的DOM节点中。
9.一种界面展示数据的装置,位于客户端,其特征在于,包括:
解析引擎模块,用于将服务器下发的界面模板的结构化数据解析成虚拟视图节点,所述界面模板的结构化数据由服务端对通用协议标记语言编写的界面模板数据解析后生成,所述界面模板数据包括用于描述控件的通用标签;
绑定模块,用于将业务数据和所述虚拟视图节点绑定;
布局引擎模块,用于根据绑定业务数据后的虚拟视图节点计算所述控件的位置信息;
渲染引擎模块,用于根据所述控件的位置信息渲染视图。
10.根据权利要求9所述的装置,其特征在于,所述通用协议标记语言为HTML,所述结构化数据为JSON数据或XML数据。
11.根据权利要求9所述的装置,其特征在于,所述虚拟视图节点所存储的信息包括所述通用标签的相关信息、和/或所述所述客户端的类型信息、和/或所述客户端中响应事件的信息。
12.根据权利要求9所述的装置,其特征在于,所述解析引擎模块还用于当所述客户端接收到更新后的界面模板的结构化数据后,通知所述虚拟视图节点更新所存储的相关信息。
13.根据权利要求9所述的装置,其特征在于,还包括业务数据模块,用于接收服务端下发的业务数据并发给所述解析引擎模块,以及根据所述解析引擎模块的通知向所述服务端请求业务数据;
所述解析引擎模块还用于在未查找到与所述业务数据对应的界面模板的结构化数据时,向所述业务数据模块发送通知。
14.根据权利要求9所述的装置,其特征在于,所述渲染引擎模块根据所述控件的位置信息渲染视图包括:
当所述布局引擎模块计算完所有控件的位置信息后,获取所有控件的位置信息,将所有控件一并渲染成视图。
15.一种界面展示数据的装置,位于服务端,其特征在于,包括:
解析引擎模块,用于将通用协议标记语言编写的界面模板数据解析成结构化数据;所述界面模板数据包括用于描述控件的通用标签;
通信模块,用于将所述结构化数据下发给客户端,以使所述客户端将所述控件渲染成视图。
16.根据权利要求15所述的装置,其特征在于,所述通用协议标记语言为HTML,所述结构化数据为JSON数据,所述通用标签存储于所述JSON数据的DOM节点中。
CN201511021196.3A 2015-12-30 2015-12-30 界面展示数据的方法及装置 Active CN106936871B (zh)

Priority Applications (12)

Application Number Priority Date Filing Date Title
CN201511021196.3A CN106936871B (zh) 2015-12-30 2015-12-30 界面展示数据的方法及装置
MYPI2018001216A MY186876A (en) 2015-12-30 2016-12-16 Interface data displaying method and device
ES16880972T ES2808924T3 (es) 2015-12-30 2016-12-16 Método y dispositivo de visualización de datos de interfaz
EP16880972.1A EP3399721B1 (en) 2015-12-30 2016-12-16 Interface data displaying method and device
AU2016382741A AU2016382741B2 (en) 2015-12-30 2016-12-16 Interface data displaying method and device
PL16880972T PL3399721T3 (pl) 2015-12-30 2016-12-16 Sposób i urządzenie do wyświetlania danych interfejsu
SG11201805617SA SG11201805617SA (en) 2015-12-30 2016-12-16 Interface data displaying method and device
JP2018534860A JP6755954B2 (ja) 2015-12-30 2016-12-16 インターフェースデータの提示方法及び装置
PCT/CN2016/110259 WO2017114182A1 (zh) 2015-12-30 2016-12-16 界面展示数据的方法及装置
KR1020187022016A KR102105261B1 (ko) 2015-12-30 2016-12-16 인터페이스 데이터 디스플레이 방법 및 장치
US16/019,716 US11216610B2 (en) 2015-12-30 2018-06-27 Generating a graphical user interface based on formatted structure data
PH12018501401A PH12018501401A1 (en) 2015-12-30 2018-06-29 Interface data displaying method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511021196.3A CN106936871B (zh) 2015-12-30 2015-12-30 界面展示数据的方法及装置

Publications (2)

Publication Number Publication Date
CN106936871A true CN106936871A (zh) 2017-07-07
CN106936871B CN106936871B (zh) 2020-05-29

Family

ID=59224489

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511021196.3A Active CN106936871B (zh) 2015-12-30 2015-12-30 界面展示数据的方法及装置

Country Status (12)

Country Link
US (1) US11216610B2 (zh)
EP (1) EP3399721B1 (zh)
JP (1) JP6755954B2 (zh)
KR (1) KR102105261B1 (zh)
CN (1) CN106936871B (zh)
AU (1) AU2016382741B2 (zh)
ES (1) ES2808924T3 (zh)
MY (1) MY186876A (zh)
PH (1) PH12018501401A1 (zh)
PL (1) PL3399721T3 (zh)
SG (1) SG11201805617SA (zh)
WO (1) WO2017114182A1 (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107438194A (zh) * 2017-08-09 2017-12-05 青岛海信电器股份有限公司 一种智能电视ui对象绘制方法及智能电视
CN108153525A (zh) * 2017-12-14 2018-06-12 广州市玄武无线科技股份有限公司 一种构建交互界面的方法、装置及电子设备
CN108763171A (zh) * 2018-04-20 2018-11-06 中国船舶重工集团公司第七〇九研究所 一种基于格式模板的文档自动化生成方法
CN108804177A (zh) * 2018-05-23 2018-11-13 北京五八信息技术有限公司 更新界面视图的方法、装置、计算机设备及存储介质
CN108845803A (zh) * 2018-05-23 2018-11-20 北京五八信息技术有限公司 一种列表视图的更新方法、装置、设备及存储介质
CN109145238A (zh) * 2018-07-06 2019-01-04 阿里巴巴集团控股有限公司 一种卡片显示方法、装置及移动设备
CN109408086A (zh) * 2018-09-28 2019-03-01 平安普惠企业管理有限公司 App的界面更新方法、装置、计算机设备及存储介质
CN109582313A (zh) * 2018-12-14 2019-04-05 广东亿迅科技有限公司 业务界面动态构造方法、装置、计算机设备和存储介质
CN109684079A (zh) * 2018-12-07 2019-04-26 恒生电子股份有限公司 显示数据处理方法、装置以及电子设备
CN109710821A (zh) * 2018-12-20 2019-05-03 云南电网有限责任公司玉溪供电局 基于微件的供电可靠性指标数据可视化方法
CN110020307A (zh) * 2017-11-30 2019-07-16 阿里巴巴集团控股有限公司 一种客户端视图的绘制方法和装置
CN110058855A (zh) * 2019-03-26 2019-07-26 东软医疗系统股份有限公司 一种软件的界面和工作流的更新方法、装置及设备
CN111813467A (zh) * 2019-04-10 2020-10-23 阿里巴巴集团控股有限公司 一种界面刷新方法、装置及可读存储介质
CN111857782A (zh) * 2020-07-27 2020-10-30 苏州朗动网络科技有限公司 界面更新方法、装置、计算机设备和存储介质
CN112099768A (zh) * 2020-08-04 2020-12-18 北京奇艺世纪科技有限公司 业务流程处理方法、装置及计算机可读存储介质
CN112306324A (zh) * 2020-10-30 2021-02-02 北京嘀嘀无限科技发展有限公司 信息处理方法、装置、设备和介质
CN114153517A (zh) * 2021-10-19 2022-03-08 西安震有信通科技有限公司 虚拟化节点控件子项的定位方法、装置及终端设备
CN114416104A (zh) * 2022-03-30 2022-04-29 清华大学 一种结构化数据文件处理方法及装置

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107291465A (zh) * 2017-06-14 2017-10-24 北京小米移动软件有限公司 页面显示方法、装置及存储介质
US10409573B1 (en) * 2018-02-19 2019-09-10 International Business Machines Corporation Batch script decomposer
CN109240688A (zh) * 2018-08-13 2019-01-18 重庆金融资产交易所有限责任公司 界面开发方法、电子装置及可读存储介质
CN109388398B (zh) * 2018-10-16 2021-07-30 郑州云海信息技术有限公司 虚拟化系统中界面生成方法和装置
CN111796727A (zh) * 2019-03-22 2020-10-20 阿里巴巴集团控股有限公司 一种界面数据处理方法及装置
CN110471661A (zh) * 2019-08-20 2019-11-19 深圳科蓝金信科技发展有限公司 前端界面的数据描述方法及前端界面的生成方法
CN110825373B (zh) * 2019-10-10 2023-04-25 上海上湖信息技术有限公司 一种移动端动态化方法及装置
KR102274333B1 (ko) * 2020-01-31 2021-07-08 한국산업기술시험원 분석 장비에서 출력된 결과데이터의 통합 관리 장치 및 방법
KR102190792B1 (ko) * 2020-06-01 2020-12-14 한국사회보장정보원 사회복지 자격정보 제공방법, 이를 위한 컴퓨터 프로그램
CN111857929B (zh) * 2020-07-23 2023-05-30 杭州海康威视数字技术股份有限公司 应用程序界面显示的方法、装置及计算机设备
CN112052001B (zh) * 2020-09-04 2023-11-24 上海浦东发展银行股份有限公司 App客户端的ui动态显示设计架构、方法、设备及存储介质
US11789707B2 (en) * 2021-01-13 2023-10-17 Yulin Yin Tool for creating forms in webpage
CN113138761A (zh) * 2021-04-30 2021-07-20 南京电研电力自动化股份有限公司 一种界面编程方法及系统
CN113986096A (zh) * 2021-12-29 2022-01-28 北京亮亮视野科技有限公司 一种交互方法、装置、电子设备和存储介质
KR20230128916A (ko) * 2022-02-28 2023-09-05 주식회사 플루이즈 사용자 기기간에 ui 화면을 송수신하는 방법
CN114637499B (zh) * 2022-03-31 2022-11-29 阿里巴巴(中国)有限公司 可视化组件处理方法、装置、设备及介质
CN115268911A (zh) * 2022-08-01 2022-11-01 广州道然信息科技有限公司 基于布局和组件的电视应用构建方法
CN116522871B (zh) * 2023-07-05 2024-01-09 鹏城实验室 数据格式转换方法、装置、设备和存储介质
CN117421000A (zh) * 2023-09-06 2024-01-19 北京饼干科技有限公司 生成分发网页的方法、装置、电子设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1799026A (zh) * 2003-06-05 2006-07-05 瑞士再保险公司 用于产生一致的设备无关图形用户界面的方法和终端
US20060206804A1 (en) * 2005-03-08 2006-09-14 James Barnett Reversible logic for widget and markup language generation
CN104090749A (zh) * 2014-05-30 2014-10-08 爱培科科技开发(深圳)有限公司 一种WinCE产品界面主题更新变换处理方法及系统
CN104158836A (zh) * 2014-06-23 2014-11-19 浙江大学城市学院 一种通过数据渲染移动应用界面的方法
CN104798036A (zh) * 2012-08-14 2015-07-22 微软公司 使用声明性模板来标记出控件的用户界面控件框架

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6963920B1 (en) * 1993-11-19 2005-11-08 Rose Blush Software Llc Intellectual asset protocol for defining data exchange rules and formats for universal intellectual asset documents, and systems, methods, and computer program products related to same
US8965864B2 (en) * 2006-10-31 2015-02-24 Sap Se Method and system for efficient execution and rendering of client/server interactive applications
US20080209396A1 (en) * 2007-02-28 2008-08-28 Arcsoft, Inc. Homepage for Modular Software
WO2009043033A2 (en) * 2007-09-28 2009-04-02 Xcerion Aktiebolag Network operating system
JP5389902B2 (ja) * 2008-04-28 2014-01-15 セールスフォース ドット コム インコーポレイティッド ウェブサイト及びそのコンテンツの作成及び管理のためのオブジェクト指向のシステム
CN101403967A (zh) * 2008-11-12 2009-04-08 恒生电子股份有限公司 界面保存和显示方法、客户端和服务器
US20100281475A1 (en) * 2009-05-04 2010-11-04 Mobile On Services, Inc. System and method for mobile smartphone application development and delivery
US8839126B1 (en) * 2009-06-17 2014-09-16 Google Inc. Secure HTML components for building client-side user interface
US10534830B2 (en) * 2011-06-23 2020-01-14 Microsoft Technology Licensing, Llc Dynamically updating a running page
CN102346770B (zh) * 2011-09-21 2014-05-14 晨星软件研发(深圳)有限公司 WebKit浏览器网页内容加载方法及装置
US9917879B2 (en) * 2012-10-13 2018-03-13 Microsoft Technology Licensing, Llc Remote interface templates
US9355116B2 (en) * 2013-03-04 2016-05-31 Vmware, Inc. Cross-file differential content synchronization using cached patches
CN104283924B (zh) * 2013-07-08 2019-08-13 腾讯科技(深圳)有限公司 信息推送方法、装置、客户端及服务器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1799026A (zh) * 2003-06-05 2006-07-05 瑞士再保险公司 用于产生一致的设备无关图形用户界面的方法和终端
US20060206804A1 (en) * 2005-03-08 2006-09-14 James Barnett Reversible logic for widget and markup language generation
CN104798036A (zh) * 2012-08-14 2015-07-22 微软公司 使用声明性模板来标记出控件的用户界面控件框架
CN104090749A (zh) * 2014-05-30 2014-10-08 爱培科科技开发(深圳)有限公司 一种WinCE产品界面主题更新变换处理方法及系统
CN104158836A (zh) * 2014-06-23 2014-11-19 浙江大学城市学院 一种通过数据渲染移动应用界面的方法

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107438194A (zh) * 2017-08-09 2017-12-05 青岛海信电器股份有限公司 一种智能电视ui对象绘制方法及智能电视
CN110020307A (zh) * 2017-11-30 2019-07-16 阿里巴巴集团控股有限公司 一种客户端视图的绘制方法和装置
CN108153525A (zh) * 2017-12-14 2018-06-12 广州市玄武无线科技股份有限公司 一种构建交互界面的方法、装置及电子设备
CN108763171A (zh) * 2018-04-20 2018-11-06 中国船舶重工集团公司第七〇九研究所 一种基于格式模板的文档自动化生成方法
CN108763171B (zh) * 2018-04-20 2021-12-07 中国船舶重工集团公司第七一九研究所 一种基于格式模板的文档自动化生成方法
CN108804177A (zh) * 2018-05-23 2018-11-13 北京五八信息技术有限公司 更新界面视图的方法、装置、计算机设备及存储介质
CN108845803A (zh) * 2018-05-23 2018-11-20 北京五八信息技术有限公司 一种列表视图的更新方法、装置、设备及存储介质
CN108845803B (zh) * 2018-05-23 2022-11-08 北京五八信息技术有限公司 一种列表视图的更新方法、装置、设备及存储介质
CN109145238A (zh) * 2018-07-06 2019-01-04 阿里巴巴集团控股有限公司 一种卡片显示方法、装置及移动设备
CN109145238B (zh) * 2018-07-06 2021-09-28 创新先进技术有限公司 一种卡片显示方法、装置及移动设备
CN109408086A (zh) * 2018-09-28 2019-03-01 平安普惠企业管理有限公司 App的界面更新方法、装置、计算机设备及存储介质
CN109684079A (zh) * 2018-12-07 2019-04-26 恒生电子股份有限公司 显示数据处理方法、装置以及电子设备
CN109582313A (zh) * 2018-12-14 2019-04-05 广东亿迅科技有限公司 业务界面动态构造方法、装置、计算机设备和存储介质
CN109582313B (zh) * 2018-12-14 2022-02-22 广东亿迅科技有限公司 业务界面动态构造方法、装置、计算机设备和存储介质
CN109710821A (zh) * 2018-12-20 2019-05-03 云南电网有限责任公司玉溪供电局 基于微件的供电可靠性指标数据可视化方法
CN110058855A (zh) * 2019-03-26 2019-07-26 东软医疗系统股份有限公司 一种软件的界面和工作流的更新方法、装置及设备
CN110058855B (zh) * 2019-03-26 2023-09-05 沈阳智核医疗科技有限公司 一种软件的界面和工作流的更新方法、装置及设备
CN111813467A (zh) * 2019-04-10 2020-10-23 阿里巴巴集团控股有限公司 一种界面刷新方法、装置及可读存储介质
CN111857782B (zh) * 2020-07-27 2021-11-16 企查查科技有限公司 界面更新方法、装置、计算机设备和存储介质
CN111857782A (zh) * 2020-07-27 2020-10-30 苏州朗动网络科技有限公司 界面更新方法、装置、计算机设备和存储介质
CN112099768A (zh) * 2020-08-04 2020-12-18 北京奇艺世纪科技有限公司 业务流程处理方法、装置及计算机可读存储介质
CN112099768B (zh) * 2020-08-04 2024-02-23 北京奇艺世纪科技有限公司 业务流程处理方法、装置及计算机可读存储介质
CN112306324A (zh) * 2020-10-30 2021-02-02 北京嘀嘀无限科技发展有限公司 信息处理方法、装置、设备和介质
CN114153517A (zh) * 2021-10-19 2022-03-08 西安震有信通科技有限公司 虚拟化节点控件子项的定位方法、装置及终端设备
CN114153517B (zh) * 2021-10-19 2024-04-09 西安震有信通科技有限公司 虚拟化节点控件子项的定位方法、装置及终端设备
CN114416104B (zh) * 2022-03-30 2022-08-09 清华大学 一种结构化数据文件处理方法及装置
CN114416104A (zh) * 2022-03-30 2022-04-29 清华大学 一种结构化数据文件处理方法及装置

Also Published As

Publication number Publication date
KR20180100171A (ko) 2018-09-07
CN106936871B (zh) 2020-05-29
MY186876A (en) 2021-08-26
SG11201805617SA (en) 2018-07-30
US20180307465A1 (en) 2018-10-25
EP3399721A1 (en) 2018-11-07
ES2808924T3 (es) 2021-03-02
JP6755954B2 (ja) 2020-09-16
PH12018501401A1 (en) 2019-03-04
PL3399721T3 (pl) 2020-11-02
AU2016382741B2 (en) 2019-11-21
KR102105261B1 (ko) 2020-04-28
US11216610B2 (en) 2022-01-04
EP3399721A4 (en) 2018-12-26
WO2017114182A1 (zh) 2017-07-06
JP2019503538A (ja) 2019-02-07
AU2016382741A1 (en) 2018-07-19
EP3399721B1 (en) 2020-07-01

Similar Documents

Publication Publication Date Title
CN106936871A (zh) 界面展示数据的方法及装置
CN113094037A (zh) 表单和工作流的交互方法、开发平台、设备及存储介质
CN103608779B (zh) 粘贴数据的或涉及粘贴数据的改进
US9003312B1 (en) Method and apparatus for updating a web-based user interface
CN102646038B (zh) 控件内容展现方法、控件内容展现装置以及移动终端
CN105068815A (zh) 页面编辑器交互装置和方法
CN103744680B (zh) 一种业务流程处理方法及装置
CN103927260B (zh) 一种电信设备测试方法及系统
US20150302110A1 (en) Decoupling front end and back end pages using tags
CN109697064A (zh) 一种自定义页面的生成方法及装置
CN109901834A (zh) 文档页面生成方法、装置、计算机设备和存储介质
CN105354025A (zh) 基于移动应用的业务模型配置系统和方法
US9646103B2 (en) Client-side template engine and method for constructing a nested DOM module for a website
CN108733499A (zh) 浏览器页面展示数据处理方法及装置
CN104935660B (zh) 一种云程序开发运行系统、方法及装置
CN106227553A (zh) 用于描述并执行图形用户界面中的管理任务的数据驱动模式
CN109710528A (zh) 一种测试脚本生成方法、装置、设备和介质
CN109165332A (zh) 一种网页信息获取方法、装置以及设备
CN113934832A (zh) 基于会话的交互处理方法、装置、设备、介质及程序产品
CN111158998A (zh) 一种埋点数据的显示方法及装置
CN111813816A (zh) 数据处理方法、装置、计算机可读存储介质和计算机设备
CN109240673A (zh) 一种基于react-native的视图动态加载更新方法及系统
CN109670011A (zh) 一种多图源地图服务引擎
CN114090002A (zh) 前端界面构建方法、装置、电子设备和存储介质
CN103135992A (zh) 一种根据客户个人特色要求快速设计网站商城的方法

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
TR01 Transfer of patent right

Effective date of registration: 20200924

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200924

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right