CN118057333A - Acceptance method, device, equipment and storage medium for user interface design - Google Patents
Acceptance method, device, equipment and storage medium for user interface design Download PDFInfo
- Publication number
- CN118057333A CN118057333A CN202211456907.XA CN202211456907A CN118057333A CN 118057333 A CN118057333 A CN 118057333A CN 202211456907 A CN202211456907 A CN 202211456907A CN 118057333 A CN118057333 A CN 118057333A
- Authority
- CN
- China
- Prior art keywords
- layer
- detected
- user interface
- interface image
- node
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3604—Analysis of software for verifying properties of programs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
技术领域Technical Field
本申请涉及计算机领域,尤其涉及一种用户界面设计的验收方法、装置、设备以及存储介质。The present application relates to the computer field, and in particular to a user interface design acceptance method, device, equipment and storage medium.
背景技术Background technique
随着科学技术的发展,越来越多的平台推出了自主开发的应用程序。为了确保开发的用户界面(User Interface,UI)尽可能还原设计稿给出的UI设计方案,UI设计验收成为了应用程序研发过程中的一个关键环节。With the development of science and technology, more and more platforms have launched self-developed applications. In order to ensure that the developed user interface (UI) restores the UI design scheme given in the design draft as much as possible, UI design acceptance has become a key link in the application development process.
相关技术下,在进行UI设计验收时,通常是需要通过对待检测图像进行截图,然后财发送至验收平台,然后依赖于UI设计方进行人眼分辨完成,这样导致UI验收方式不够灵活,往往无法很好地跟上互联网产品快速迭代更新的步伐。Under related technologies, when conducting UI design acceptance, it is usually necessary to take a screenshot of the image to be tested, then send it to the acceptance platform, and then rely on the UI designer to complete the human eye identification. This makes the UI acceptance method inflexible and often cannot keep up with the rapid iteration and update of Internet products.
因此,目前急需一种可以提高UI验收灵活性的UI验收方法。Therefore, there is an urgent need for a UI acceptance method that can improve the flexibility of UI acceptance.
发明内容Summary of the invention
本申请实施例提供了一种用户界面设计的验收方法、装置、设备以及存储介质,用于在应用程序内置视图检测功能,实现在终端设备获取待检测图层,进而提升UI验收灵活性。The embodiments of the present application provide a user interface design acceptance method, apparatus, device and storage medium for building a view detection function into an application program, so as to obtain a layer to be detected on a terminal device, thereby improving the flexibility of UI acceptance.
有鉴于此,本申请一方面提供一种用户界面设计的验收方法,包括:构建CALayer渲染管线,并利用该渲染管线绘制待检测用户界面图像,该待检测用户界面图像包括待检测图层集合,且该待检测图层集合构成多个图层树结构;控制移动光标移动至该待检测用户界面图像的第一位置,并根据该第一位置确定检测浮层的第一作用范围,该移动光标用于在该待检测用户界面图像所处的界面上被移动,该检测浮层用于基于该移动光标所处的位置确定在该待检测用户界面图像获取待检测图层的范围,该检测浮层和该移动光标基于该渲染管线构建;利用该检测浮层根据该第一作用范围从该待检测图层集合中获取第一图层集合;从该第一图层集合中搜索得到第一待检测图层;将该待检测图层与标准图层进行比对得到验收结果。In view of this, on the one hand, the present application provides an acceptance method for user interface design, including: constructing a CALayer rendering pipeline, and using the rendering pipeline to draw a user interface image to be detected, the user interface image to be detected includes a layer set to be detected, and the layer set to be detected constitutes multiple layer tree structures; controlling a moving cursor to move to a first position of the user interface image to be detected, and determining a first range of action of a detection floating layer according to the first position, the moving cursor is used to be moved on the interface where the user interface image to be detected is located, the detection floating layer is used to determine the range of obtaining the layer to be detected in the user interface image to be detected based on the position of the moving cursor, the detection floating layer and the moving cursor are constructed based on the rendering pipeline; using the detection floating layer to obtain a first layer set from the layer set to be detected according to the first range of action; searching for a first layer to be detected from the first layer set; comparing the layer to be detected with the standard layer to obtain an acceptance result.
本申请另一方面提供一种用户界面验收装置,包括:Another aspect of the present application provides a user interface acceptance device, comprising:
生成模块,用于构建CALayer渲染管线,并利用该渲染管线绘制待检测用户界面图像,该待检测用户界面图像包括待检测图层集合,且该待检测图层集合构成多个图层树结构;A generation module is used to construct a CALayer rendering pipeline and use the rendering pipeline to draw a user interface image to be detected, wherein the user interface image to be detected includes a layer set to be detected, and the layer set to be detected constitutes a plurality of layer tree structures;
确定模块,用于控制移动光标移动至该待检测用户界面图像的第一位置,并根据该第一位置确定检测浮层的第一作用范围,该移动光标用于在该待检测用户界面图像所处的界面上被移动,该检测浮层用于基于该移动光标所处的位置确定在该待检测用户界面图像获取待检测图层的范围,该检测浮层和该移动光标基于该渲染管线构建;A determination module, used for controlling a moving cursor to move to a first position of the user interface image to be detected, and determining a first action range of a detection floating layer according to the first position, wherein the moving cursor is used to be moved on the interface where the user interface image to be detected is located, and the detection floating layer is used to determine a range of obtaining a layer to be detected in the user interface image to be detected based on the position of the moving cursor, and the detection floating layer and the moving cursor are constructed based on the rendering pipeline;
获取模块,用于利用该检测浮层根据该第一作用范围从该待检测图层集合中获取第一图层集合;An acquisition module, used for acquiring a first layer set from the to-be-detected layer set according to the first action range by using the detection floating layer;
搜索模块,用于从该第一图层集合中搜索得到第一待检测图层;A search module, used for searching for a first layer to be detected from the first layer set;
验收模块,用于将该待检测图层与标准图层进行比对得到验收结果。The acceptance module is used to compare the layer to be tested with the standard layer to obtain an acceptance result.
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该生成模块,具体用于利用该渲染管线获取待检测用户界面图像的上下文信息,该上下文信息包括该待检测用户界面图像的视图数据、视图生命周期、该待检测用户界面图像中各个视图相对于该待检测用户界面图像的位置信息以及该待检测用户界面图像的状态信息;In a possible design, in another implementation of another aspect of the embodiment of the present application, the generating module is specifically used to obtain context information of the user interface image to be detected by using the rendering pipeline, where the context information includes view data of the user interface image to be detected, a view life cycle, position information of each view in the user interface image to be detected relative to the user interface image to be detected, and state information of the user interface image to be detected;
利用该渲染管线根据该上下文信息生成待检测图层集合;Generate a set of layers to be detected according to the context information using the rendering pipeline;
利用该渲染管线将该待检测图层集合生成对应的图层树结构,并根据该图层树结构得到该待检测用户界面图像。The rendering pipeline is used to generate a corresponding layer tree structure for the layer set to be detected, and the user interface image to be detected is obtained according to the layer tree structure.
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该搜索模块,具体用于利用广度优先搜索算法从该第一图层集合中搜索得到该第一待检测图层。In one possible design, in another implementation of another aspect of the embodiment of the present application, the search module is specifically used to search for the first layer to be detected from the first layer set using a breadth-first search algorithm.
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该搜索模块,具体用于以该第一图层集合中根节点图层为基础对该第一图层集合中的各个图层进行像素点扫描生成该第一图层集合对应的多个图层树结构,并根据该多个图层树结构生成多个任务队列,其中每一个图层树结构对应一个任务队列;In a possible design, in another implementation of another aspect of the embodiment of the present application, the search module is specifically used to perform pixel point scanning on each layer in the first layer set based on the root node layer in the first layer set to generate multiple layer tree structures corresponding to the first layer set, and generate multiple task queues according to the multiple layer tree structures, wherein each layer tree structure corresponds to a task queue;
按照队列处理规则依次识别每个任务队列中的图层节点的类信息,该类信息用于描述图层节点的属性及方法;According to the queue processing rules, the class information of the layer nodes in each task queue is identified in turn. The class information is used to describe the properties and methods of the layer nodes.
在确定该类信息存在于公共类匹配模板时,确定该类信息对应的图层节点为不需要验收的图层节点,并将该类信息对应的图层节点和其对应的图层子节点的状态设置为已标记状态;When it is determined that the information of this type exists in the common class matching template, the layer node corresponding to the information of this type is determined to be a layer node that does not need to be accepted, and the state of the layer node corresponding to the information of this type and its corresponding layer subnode is set to a marked state;
在确定该类信息不存在于该公共类匹配模板时,将该类信息对应的图层节点归为第二图层节点集合,该第二图层节点集合中的各个图层节点的状态设置为已访问状态;When it is determined that the information of this type does not exist in the common class matching template, the layer nodes corresponding to the information of this type are classified into a second layer node set, and the state of each layer node in the second layer node set is set to an accessed state;
根据该移动光标的第一位置从该第二图层节点集合中获取第三图层节点集合;Acquire a third layer node set from the second layer node set according to the first position of the moving cursor;
从该第三图层节点集合中获取该第一待检测图层。The first layer to be detected is obtained from the third layer node set.
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该获取模块,还用于获取该第二图层节点集合中的各个图层节点的第一数据信息集合;In a possible design, in another implementation of another aspect of the embodiment of the present application, the acquisition module is further used to acquire a first data information set of each layer node in the second layer node set;
该生成模块,还用于以该检测浮层为根视图创建第一弹窗;The generating module is further used to create a first pop-up window with the detection floating layer as the root view;
该装置还包括显示模块,用于从该第一数据信息集合中选择该第三图层节点集合对应的数据信息显示在该第一弹窗中。The device also includes a display module, which is used to select data information corresponding to the third layer node set from the first data information set and display it in the first pop-up window.
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该装置还包括存储模块,用于将该第一数据信息集合缓存至该检测浮层对应的存储介质。In one possible design, in another implementation of another aspect of the embodiment of the present application, the device also includes a storage module for caching the first data information set to a storage medium corresponding to the detection floating layer.
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该确定模块,还用于控制该移动光标移动至第二位置,并获取该第二位置对应的第四图层节点集合;In a possible design, in another implementation of another aspect of the embodiment of the present application, the determination module is further used to control the moving cursor to move to a second position, and obtain a fourth layer node set corresponding to the second position;
该装置还包括读取模块,用于在该第四图层节点集合中存在包含于该第二图层节点集合中的图层节点时,从该检测浮层缓存的该第一数据信息集合中读取该第四图层集合对应的数据信息;The device also includes a reading module, which is used to read data information corresponding to the fourth layer set from the first data information set of the detection floating layer cache when there is a layer node included in the second layer node set in the fourth layer node set;
该生成模块,还用于以该检测浮层为根视图创建第二弹窗;The generating module is further used to create a second pop-up window with the detection floating layer as the root view;
该装置还包括显示模块,用于将该第四图层节点集合对应的数据信息显示在该第二弹窗中。The device also includes a display module, which is used to display the data information corresponding to the fourth layer node set in the second pop-up window.
本申请另一方面提供一种计算机设备,包括:存储器、处理器以及总线系统;Another aspect of the present application provides a computer device, including: a memory, a processor, and a bus system;
其中,存储器用于存储程序;Wherein, the memory is used to store programs;
处理器用于执行存储器中的程序,处理器用于根据程序代码中的指令执行上述各方面的方法;The processor is used to execute the program in the memory, and the processor is used to execute the above-mentioned methods according to the instructions in the program code;
总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。The bus system is used to connect the memory and the processor so that the memory and the processor can communicate with each other.
本申请的另一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。Another aspect of the present application provides a computer-readable storage medium, in which instructions are stored. When the computer-readable storage medium is run on a computer, the computer is enabled to execute the above-mentioned methods.
本申请的另一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方面所提供的方法。Another aspect of the present application provides a computer program product or a computer program, the computer program product or the computer program includes computer instructions, the computer instructions are stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the methods provided by the above aspects.
从以上技术方案可以看出,本申请实施例具有以下优点:在应用程序内构建CALayer渲染管线,然后根据该CALayer渲染管线绘制待检测用户界面图像,并通过该CALayer渲染管线构建的移动光标和该检测浮层获取待检测图层,使得运行该应用程序的终端就可以获取该待检测图层,并根据该待检测图层实现验收过程,不必与第三方验收平台进行数据交互,从而提高了用户界面验收的灵活性。It can be seen from the above technical scheme that the embodiments of the present application have the following advantages: a CALayer rendering pipeline is constructed within the application, and then the user interface image to be detected is drawn according to the CALayer rendering pipeline, and the layer to be detected is obtained through the moving cursor constructed by the CALayer rendering pipeline and the detection floating layer, so that the terminal running the application can obtain the layer to be detected, and implement the acceptance process according to the layer to be detected, without having to interact with a third-party acceptance platform for data, thereby improving the flexibility of user interface acceptance.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
图1为本申请实施例中用户界面设计的验收方法的一个应用场景示意图;FIG1 is a schematic diagram of an application scenario of the acceptance method for user interface design in an embodiment of the present application;
图2为本申请实施例中用户界面设计的验收方法的一个实施例示意图;FIG2 is a schematic diagram of an embodiment of a method for accepting user interface design in an embodiment of the present application;
图3为本申请实施例中基于CALayer渲染管线绘制待检测用户界面图像的一个流程示意图;FIG3 is a schematic diagram of a process of drawing a user interface image to be detected based on a CALayer rendering pipeline in an embodiment of the present application;
图4为本申请实施例中基于CALayer渲染管线绘制出的待检测用户界面图像的一个界面示意图;FIG4 is a schematic diagram of an interface of a user interface image to be detected drawn based on a CALayer rendering pipeline in an embodiment of the present application;
图5为本申请实施例中基于CALayer渲染管线绘制出的待检测用户界面图像的另一个界面示意图;FIG5 is another interface schematic diagram of a user interface image to be detected drawn based on a CALayer rendering pipeline in an embodiment of the present application;
图6为本申请实施例中基于CALayer渲染管线绘制出的待检测用户界面图像的另一个界面示意图;FIG6 is another interface schematic diagram of a user interface image to be detected drawn based on a CALayer rendering pipeline in an embodiment of the present application;
图7为本申请实施例中基于CALayer渲染管线绘制出的待检测用户界面图像的另一个界面示意图;FIG7 is another interface schematic diagram of a user interface image to be detected drawn based on a CALayer rendering pipeline in an embodiment of the present application;
图8为本申请实施例中基于CALayer渲染管线绘制出的待检测用户界面图像的另一个界面示意图;FIG8 is another interface schematic diagram of a user interface image to be detected drawn based on a CALayer rendering pipeline in an embodiment of the present application;
图9为本申请实施例中基于广度优先搜索算法的图层搜索流程示意图;FIG9 is a schematic diagram of a layer search process based on a breadth-first search algorithm in an embodiment of the present application;
图9a为本申请实施例中显示待检测图层的数据信息的一个界面示意图;FIG9a is a schematic diagram of an interface showing data information of a layer to be detected in an embodiment of the present application;
图10为本申请实施例中用户界面验收装置的一个实施例示意图;FIG10 is a schematic diagram of an embodiment of a user interface acceptance device in an embodiment of the present application;
图10a为本申请实施例中用户界面验收装置的另一个实施例示意图;FIG10a is a schematic diagram of another embodiment of the user interface acceptance device in the embodiment of the present application;
图10b为本申请实施例中用户界面验收装置的另一个实施例示意图;FIG10b is a schematic diagram of another embodiment of the user interface acceptance device in the embodiment of the present application;
图10c为本申请实施例中用户界面验收装置的另一个实施例示意图;FIG10c is a schematic diagram of another embodiment of the user interface acceptance device in the embodiment of the present application;
图11为本申请实施例中用户界面验收装置的另一个实施例示意图;FIG11 is a schematic diagram of another embodiment of the user interface acceptance device in the embodiment of the present application;
图12为本申请实施例中用户界面验收装置的另一个实施例示意图。FIG. 12 is a schematic diagram of another embodiment of the user interface acceptance device in the embodiment of the present application.
具体实施方式Detailed ways
本申请实施例提供了一种用户界面设计的验收方法、装置、设备以及存储介质,用于在应用程序内置视图检测功能,实现在终端设备获取待检测图层,进而提升UI验收灵活性。The embodiments of the present application provide a user interface design acceptance method, apparatus, device and storage medium for building a view detection function into an application program, so as to obtain a layer to be detected on a terminal device, thereby improving the flexibility of UI acceptance.
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein, for example. In addition, the terms "including" and "corresponding to" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
随着科学技术的发展,越来越多的平台推出了自主开发的应用程序。为了确保开发的UI尽可能还原设计稿给出的UI设计方案,UI设计验收成为了应用程序研发过程中的一个关键环节。相关技术下,在进行UI设计验收时,通常是需要通过对待检测图像进行截图,然后财发送至验收平台,然后依赖于UI设计方进行人眼分辨完成,这样导致UI验收方式不够灵活,往往无法很好地跟上互联网产品快速迭代更新的步伐。因此,目前急需一种可以提高UI验收灵活性的UI验收方法。With the development of science and technology, more and more platforms have launched self-developed applications. In order to ensure that the developed UI restores the UI design scheme given in the design draft as much as possible, UI design acceptance has become a key link in the application development process. Under related technologies, when conducting UI design acceptance, it is usually necessary to take a screenshot of the image to be detected, then send it to the acceptance platform, and then rely on the UI designer to complete the human eye recognition. This makes the UI acceptance method not flexible enough and often cannot keep up with the pace of rapid iteration and update of Internet products. Therefore, there is an urgent need for a UI acceptance method that can improve the flexibility of UI acceptance.
为了解决上述技术问题,本申请提供如下技术方案:构建CALayer渲染管线,并利用该渲染管线绘制待检测用户界面图像,该待检测用户界面图像包括待检测图层集合,且该待检测图层集合构成多个图层树结构;控制移动光标移动至该待检测用户界面图像的第一位置,并根据该第一位置确定检测浮层的第一作用范围,该移动光标用于在该待检测用户界面图像所处的界面上被移动,该检测浮层用于基于该移动光标所处的位置确定在该待检测用户界面图像获取待检测图层的范围,该检测浮层和该移动光标基于该渲染管线构建;利用该检测浮层根据该第一作用范围从该待检测图层集合中获取第一图层集合;从该第一图层集合中搜索得到第一待检测图层;将该待检测图层与标准图层进行比对得到验收结果。这样在应用程序内构建CALayer渲染管线,然后根据该CALayer渲染管线绘制待检测用户界面图像,并通过该CALayer渲染管线构建的移动光标和该检测浮层获取待检测图层,使得运行该应用程序的终端就可以获取该待检测图层,并根据该待检测图层实现验收过程,不必与第三方验收平台进行数据交互,从而提高了用户界面验收的灵活性。In order to solve the above technical problems, the present application provides the following technical solutions: constructing a CALayer rendering pipeline, and using the rendering pipeline to draw a user interface image to be detected, the user interface image to be detected includes a layer set to be detected, and the layer set to be detected constitutes multiple layer tree structures; controlling a moving cursor to move to a first position of the user interface image to be detected, and determining a first range of action of a detection floating layer according to the first position, the moving cursor is used to be moved on the interface where the user interface image to be detected is located, the detection floating layer is used to determine the range of obtaining the layer to be detected in the user interface image to be detected based on the position of the moving cursor, the detection floating layer and the moving cursor are constructed based on the rendering pipeline; using the detection floating layer to obtain a first layer set from the layer set to be detected according to the first range of action; searching for a first layer to be detected from the first layer set; comparing the layer to be detected with the standard layer to obtain an acceptance result. In this way, a CALayer rendering pipeline is constructed within the application, and then the user interface image to be detected is drawn according to the CALayer rendering pipeline, and the layer to be detected is obtained through the moving cursor constructed by the CALayer rendering pipeline and the detection floating layer, so that the terminal running the application can obtain the layer to be detected and implement the acceptance process based on the layer to be detected, without having to interact with the third-party acceptance platform for data, thereby improving the flexibility of user interface acceptance.
为了方便理解,下面对本申请中涉及到的部分名词进行说明:For ease of understanding, some of the terms involved in this application are explained below:
云计算(Cloud Computing):狭义云计算指的是互联网技术(InternetTechnology,IT)基础设施的交付和使用模式,是通过网络以按需、易扩展的方式获得所需资源;而广义云计算指的是服务的交付和使用模式,是通过网络以按需、易扩展的方式获得所需服务。其中,可以是IT和软件、互联网相关的服务,也可以是其他服务。云计算是网格计算(Grid Computing)、分布式计算(Distributed Computing)、并行计算(ParallelComputing)、效用计算(Utility Computing)、网络存储(Network StorageTechnologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机与网络技术发展融合的产物。随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算得以迅速发展起来。不同于传统的并行分布式计算,云计算是从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。Cloud computing: In a narrow sense, cloud computing refers to the delivery and use model of Internet technology (IT) infrastructure, which is to obtain the required resources through the network in an on-demand and easily scalable manner; while in a broad sense, cloud computing refers to the delivery and use model of services, which is to obtain the required services through the network in an on-demand and easily scalable manner. Among them, it can be IT and software, Internet-related services, or other services. Cloud computing is the product of the development and integration of traditional computer and network technologies such as grid computing, distributed computing, parallel computing, utility computing, network storage technologies, virtualization, and load balancing. With the development of the Internet, real-time data streams, and the diversification of connected devices, as well as the promotion of search services, social networks, mobile commerce, and open collaboration, cloud computing has developed rapidly. Different from traditional parallel distributed computing, cloud computing will promote revolutionary changes in the entire Internet model and enterprise management model from the perspective of concept.
树形数据结构:在计算机科学中,树是一种抽象数据类型或者是这种抽象数据类型的数据结构。树状数据结构是由n(n>0)个有限节点组成的一个具有层次关系的集合,用来表示数据表素之间的一对多关系,其中,树和二叉树是最为常见的两种树状数据结构。之所以将这种数据结构叫做“树”,是因为它看起来像是一棵倒挂的树,也就是说它是一棵根朝上,而叶子朝下的树。因此,树状数据结构具有以下几个特点:(1)、每个节点有零个或者多个子节点;(2)、没有父节点的节点被称之为根节点;(3)、每一个非根节点的节点,有且只有一个父节点;(4)、除了根节点以外,每个子节点可以划分为多个不相交的子树。树形数据结构是一类重要的非线性数据结构,广泛于计算机领域中,比如,在编译程序中用树来表示源程序的语法结构;比如,在数据库系统中,树形数据结构也是信息的重要组织形式之一;又比如,采用树形数据结构,搭建文件管理的多级目录结构。而本申请中,是将图层节点按照树结构进行布局,从而得到图层树结构,其中,树结构中的每一个节点为一个图层。Tree data structure: In computer science, a tree is an abstract data type or a data structure of this abstract data type. A tree data structure is a hierarchical set of n (n>0) finite nodes, used to represent a one-to-many relationship between data elements. Trees and binary trees are the two most common tree data structures. This data structure is called a "tree" because it looks like an upside-down tree, that is, a tree with its roots facing upward and its leaves facing downward. Therefore, a tree data structure has the following characteristics: (1) Each node has zero or more child nodes; (2) A node without a parent node is called a root node; (3) Each non-root node has one and only one parent node; (4) Except for the root node, each child node can be divided into multiple non-intersecting subtrees. Tree data structure is an important type of nonlinear data structure, which is widely used in the computer field. For example, in compilers, trees are used to represent the syntax structure of source programs; for example, in database systems, tree data structures are also one of the important forms of information organization; for example, tree data structures are used to build multi-level directory structures for file management. In the present application, the layer nodes are laid out according to a tree structure, thereby obtaining a layer tree structure, wherein each node in the tree structure is a layer.
核心动画层(Core Animation Layer,CALayer):可以用于管理基于图像的内容并允许对该内容执行动画的对象。在本实施例中,在绘制该待检测用户界面图像时,基于CALayer将该待检测用户界面图像中的各个视图以图层形式进行绘制,并将图层布局为树结构,从而在该终端运行的APP的展示界面显示该待检测用户界面图像。其中,每个图层可以具有其特定的大小,旋转,角度,坐标变化或者内容之类的信息,这些变化还可以通过动画表现出来。Core Animation Layer (CALayer): An object that can be used to manage image-based content and allow animation to be performed on the content. In this embodiment, when drawing the user interface image to be detected, each view in the user interface image to be detected is drawn in the form of a layer based on CALayer, and the layers are laid out as a tree structure, so that the user interface image to be detected is displayed on the display interface of the APP running on the terminal. Among them, each layer can have its specific size, rotation, angle, coordinate change or content information, and these changes can also be expressed through animation.
类信息:类就是用于描述某一类事物,相当于是一个模板。比如在应用程序(Application,APP)的页面中,将显示在APP的页面最下边的视图可以归为一类,比如称为“tabbar”,也称为底tab;或者将显示在APP的页面顶部的视图归于为一类,比如称为“导航栏”,也可以称为nativationBa。Class information: A class is used to describe a certain type of thing, which is equivalent to a template. For example, in an application (APP) page, the views displayed at the bottom of the APP page can be classified into one category, such as "tabbar", also known as bottom tab; or the views displayed at the top of the APP page can be classified into one category, such as "navigation bar", also known as nativationBar.
标准图层:为用户界面的设计人员设计得到的参考图层。Standard layers: Reference layers designed for user interface designers.
参见图1,图1是本申请实施例提供的用户界面的验收方案的应用场景的一个可选的架构示意图,为实现支撑用户界面的验收方案的应用,终端设备100通过网络200连接服务器300,服务器300连接数据库400,网络200可以是广域网或者局域网,又或者是二者的组合。其中用于实现用户界面的验收方案的客户端部署于终端设备100上,其中,客户端可以通过浏览器的形式运行于终端设备100上,也可以通过独立的应用程序(application,APP)的形式运行于终端设备100上等,对于客户端的具体展现形式,此处不做限定。本申请涉及的服务器300可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备100可以是智能手机、平板电脑、笔记本电脑、掌上电脑、个人电脑、智能电视、智能手表、车载设备、可穿戴设备等,但并不局限于此。终端设备100以及服务器300可以通过有线或无线通信方式通过网络200进行直接或间接地连接,本申请在此不做限制。服务器300和终端设备100的数量也不做限制。本申请提供的方案可以由终端设备100独立完成,也可以由服务器300独立完成,还可以由终端设备100与服务器300配合完成,对此,本申请并不做具体限定。其中,数据库400,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。数据库管理系统(DatabaseManagement System,DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、可扩展标记语言(Extensible Markup Language,XML);或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如结构化查询语言(Structured Query Language,SQL)、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。在本申请中,数据库400可以用于存储应用程序的视图数据或者待检测的应用程序的代码文件,例如还可以存储于终端设备100、区块链或者服务器300的分布式文件系统中等。Referring to FIG. 1 , FIG. 1 is an optional architecture diagram of an application scenario of the acceptance scheme of the user interface provided in an embodiment of the present application. To implement the application of the acceptance scheme supporting the user interface, the terminal device 100 is connected to the server 300 through the network 200, and the server 300 is connected to the database 400. The network 200 can be a wide area network or a local area network, or a combination of the two. The client for implementing the acceptance scheme of the user interface is deployed on the terminal device 100, wherein the client can be run on the terminal device 100 in the form of a browser, or can be run on the terminal device 100 in the form of an independent application (application, APP), etc. The specific presentation form of the client is not limited here. The server 300 involved in the present application can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content distribution networks (Content Delivery Network, CDN), and basic cloud computing services such as big data and artificial intelligence platforms. The terminal device 100 can be a smart phone, a tablet computer, a laptop, a PDA, a personal computer, a smart TV, a smart watch, a vehicle-mounted device, a wearable device, etc., but is not limited thereto. The terminal device 100 and the server 300 can be directly or indirectly connected through the network 200 by wired or wireless communication, and this application does not limit this. The number of servers 300 and terminal devices 100 is also not limited. The solution provided in this application can be completed independently by the terminal device 100, or by the server 300, or by the terminal device 100 and the server 300 in cooperation, and this application does not make specific limitations. Among them, the database 400, in short, can be regarded as an electronic file cabinet-a place for storing electronic files, and users can add, query, update, delete, and other operations on the data in the file. The so-called "database" is a collection of data that is stored together in a certain way, can be shared with multiple users, has as little redundancy as possible, and is independent of the application program. A database management system (DBMS) is a computer software system designed for managing databases, generally with basic functions such as storage, interception, security, and backup. Database management systems can be classified according to the database models they support, such as relational, Extensible Markup Language (XML); or according to the types of computers they support, such as server clusters, mobile phones; or according to the query language used, such as Structured Query Language (SQL), XQuery; or according to performance impulse focus, such as maximum scale, maximum operating speed; or other classification methods. Regardless of the classification method used, some DBMSs can cross categories, for example, supporting multiple query languages at the same time. In the present application, the database 400 can be used to store the view data of the application or the code file of the application to be detected, for example, it can also be stored in the distributed file system of the terminal device 100, the blockchain or the server 300, etc.
在一些实施例中,服务器300可以与该终端设备100联合执行本申请实施例提供的用户界面的验收方案,本实施例中,该其具体流程可以如下:该终端设备100通过该服务器300从数据库400中获取待检测用户界面图像的上下文信息;该终端设备100运行该待检测用户界面图像对应的应用程序,并构建CALayer渲染管线,并利用该渲染管线绘制待检测用户界面图像,该待检测用户界面图像包括待检测图层集合,且该待检测图层集合构成多个图层树结构;控制移动光标移动至该待检测用户界面图像的第一位置,并根据该第一位置确定检测浮层的第一作用范围,该移动光标用于在该待检测用户界面图像所处的界面上被移动,该检测浮层用于基于该移动光标所处的位置确定在该待检测用户界面图像获取待检测图层的范围,该检测浮层和该移动光标基于该渲染管线构建;利用该检测浮层根据该第一作用范围从该待检测图层集合中获取第一图层集合;从该第一图层集合中搜索得到第一待检测图层;将该待检测图层与标准图层进行比对得到验收结果。In some embodiments, the server 300 can jointly execute the user interface acceptance scheme provided by the embodiment of the present application with the terminal device 100. In this embodiment, the specific process can be as follows: the terminal device 100 obtains the context information of the user interface image to be detected from the database 400 through the server 300; the terminal device 100 runs the application corresponding to the user interface image to be detected, and constructs a CALayer rendering pipeline, and uses the rendering pipeline to draw the user interface image to be detected, the user interface image to be detected includes a layer set to be detected, and the layer set to be detected constitutes a plurality of layer tree structures; the moving cursor is controlled to move to the first position of the user interface image to be detected, and the first action range of the detection floating layer is determined according to the first position, the moving cursor is used to be moved on the interface where the user interface image to be detected is located, the detection floating layer is used to determine the range of obtaining the layer to be detected in the user interface image to be detected based on the position of the moving cursor, and the detection floating layer and the moving cursor are constructed based on the rendering pipeline; the first layer set is obtained from the layer set to be detected according to the first action range using the detection floating layer; the first layer to be detected is searched from the first layer set; the layer to be detected is compared with the standard layer to obtain the acceptance result.
在另一个实施例中,该终端设备100独立执行本申请实施例提供的信息推荐方法,本实施例中,其具体流程可以如下:该终端设备100从数据库400中获取待检测用户界面图像的上下文信息;然后运行该待检测用户界面图像对应的应用程序,并构建CALayer渲染管线,并利用该渲染管线绘制待检测用户界面图像,该待检测用户界面图像包括待检测图层集合,且该待检测图层集合构成多个图层树结构;控制移动光标移动至该待检测用户界面图像的第一位置,并根据该第一位置确定检测浮层的第一作用范围,该移动光标用于在该待检测用户界面图像所处的界面上被移动,该检测浮层用于基于该移动光标所处的位置确定在该待检测用户界面图像获取待检测图层的范围,该检测浮层和该移动光标基于该渲染管线构建;利用该检测浮层根据该第一作用范围从该待检测图层集合中获取第一图层集合;从该第一图层集合中搜索得到第一待检测图层;将该待检测图层与标准图层进行比对得到验收结果。In another embodiment, the terminal device 100 independently executes the information recommendation method provided by the embodiment of the present application. In this embodiment, the specific process can be as follows: the terminal device 100 obtains the context information of the user interface image to be detected from the database 400; then runs the application corresponding to the user interface image to be detected, and constructs a CALayer rendering pipeline, and uses the rendering pipeline to draw the user interface image to be detected, the user interface image to be detected includes a layer set to be detected, and the layer set to be detected constitutes a plurality of layer tree structures; controls the moving cursor to move to the first position of the user interface image to be detected, and determines the first action range of the detection floating layer according to the first position, the moving cursor is used to be moved on the interface where the user interface image to be detected is located, the detection floating layer is used to determine the range of obtaining the layer to be detected in the user interface image to be detected based on the position of the moving cursor, and the detection floating layer and the moving cursor are constructed based on the rendering pipeline; uses the detection floating layer to obtain a first layer set from the layer set to be detected according to the first action range; searches for a first layer to be detected from the first layer set; compares the layer to be detected with the standard layer to obtain an acceptance result.
可以理解的是,在本申请的具体实施方式中,涉及到视图数据等相关的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。It is understandable that in the specific implementation of the present application, related data such as view data is involved. When the above embodiments of the present application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.
结合上述介绍,下面以终端设备作为执行主体对本申请中用户界面的验收方法进行介绍,请参阅图2,本申请实施例中用户界面的验收方法的一个实施例包括:In combination with the above introduction, the following introduces the user interface acceptance method in the present application with the terminal device as the execution subject. Please refer to FIG. 2. An embodiment of the user interface acceptance method in the embodiment of the present application includes:
201、构建CALayer渲染管线,并利用该渲染管线绘制待检测用户界面图像,该待检测用户界面图像包括待检测图层集合,且该待检测图层集合构成多个图层树结构。201. Construct a CALayer rendering pipeline, and use the rendering pipeline to draw a user interface image to be detected, where the user interface image to be detected includes a layer set to be detected, and the layer set to be detected constitutes a plurality of layer tree structures.
一般的,在app的开发过程中,开发者会先开发出测试版本的app。所述的测试版本的app包括了待发布app的大部功能,而为了测试该app的功能,通常也需要对该app的UI控件进行验收。因此本实施例中,可以在测试版本的app中引入用户界面设计的验收功能。也就是说,本实施例中,提供的用户界面设计的验收功能可以是测试版本中的一个功能模式。在该功能模式下,可以方便的实现对测试版本的app中的各个UI控件进行验收。并且在正式推出发布版本的app之后,用户界面调度的验收功能则不需要打包。Generally, during the development process of an app, the developer will first develop a test version of the app. The test version of the app includes most of the functions of the app to be released, and in order to test the functions of the app, it is usually necessary to accept the UI controls of the app. Therefore, in this embodiment, an acceptance function for user interface design can be introduced in the test version of the app. That is to say, in this embodiment, the acceptance function for user interface design provided can be a functional mode in the test version. In this functional mode, it is convenient to accept each UI control in the test version of the app. And after the release version of the app is officially launched, the acceptance function for user interface scheduling does not need to be packaged.
本实施例中,该待检测用户界面所对应的app可以运行于终端设备上。在该终端设备上运行该待检测app,并开启该用户界面设计的验收功能模式时,该终端设备可以调用CALayer并生成渲染管线,基于该渲染管线绘制该待检测用户界面图像,其具体流程可以如图3所示:In this embodiment, the app corresponding to the user interface to be detected can be run on the terminal device. When the app to be detected is run on the terminal device and the acceptance function mode of the user interface design is turned on, the terminal device can call CALayer and generate a rendering pipeline, and draw the user interface image to be detected based on the rendering pipeline. The specific process can be shown in Figure 3:
在生成该渲染管线之后,该终端设备通过该渲染管线从服务器或者自身的存储介质获取该待检测用户界面图像的上下文信息,该上下文信息包括该待检测用户界面图像的视图数据、视图生命周期、该待检测用户界面图像中各个视图相对于该待检测用户界面图像的位置信息以及该待检测用户界面图像的状态信息;利用该渲染管线根据该上下文信息生成待检测图层集合;利用该渲染管线将该待检测图层集合生成对应的图层树结构,并根据该图层树结构得到该待检测用户界面图像。After generating the rendering pipeline, the terminal device obtains the context information of the user interface image to be detected from the server or its own storage medium through the rendering pipeline, the context information including the view data of the user interface image to be detected, the view life cycle, the position information of each view in the user interface image to be detected relative to the user interface image to be detected, and the status information of the user interface image to be detected; uses the rendering pipeline to generate a layer set to be detected according to the context information; uses the rendering pipeline to generate a corresponding layer tree structure for the layer set to be detected, and obtains the user interface image to be detected according to the layer tree structure.
本实施例中,该待检测用户界面图像的视图数据用于指示一个视图具体图层数据信息,比如该视图中每一个图层对应的图片、文字、背景色、控件的大小、阴影、字体、字体大小等等信息。该视图生命周期用于指示一个视图在该待检测用户界面图像中存在的时长,比如该待检测用户界面图像中某一个控件被触发之后将会弹出一个弹窗,该弹窗作为一个视图在该待检测用户界面图像中的存在时长为1分钟,则该视图生命周期为1分钟。该待检测用户界面图像的状态信息用于指示该待检测用户界面图像在整体绘制过程中的不同阶段,比如该待检测用户界面图像处于视图数据加载阶段或者处于视图数据解析阶段或者处于视图数据解析完成阶段。In this embodiment, the view data of the user interface image to be detected is used to indicate the specific layer data information of a view, such as the picture, text, background color, control size, shadow, font, font size and other information corresponding to each layer in the view. The view life cycle is used to indicate the length of time a view exists in the user interface image to be detected. For example, after a control in the user interface image to be detected is triggered, a pop-up window will pop up. The pop-up window exists as a view in the user interface image to be detected for 1 minute, and the view life cycle is 1 minute. The status information of the user interface image to be detected is used to indicate the different stages of the user interface image to be detected in the overall drawing process, such as the user interface image to be detected is in the view data loading stage or in the view data parsing stage or in the view data parsing completion stage.
该位置信息用于指示每个视图在该待检测用户界面图像中的相对位置,其具体可以x,y,width,height的方式进行存储。其中,该x用于指示视图在待检测用户界面图像的X轴上的起点;y用于指示视图在待检测用户界面图像Y轴上的起点;width用于指示视图的长度;height用于指示视图的高度。一个示例性方案中,如图4所示,假设该控件1对应一个视图,控件2对应另一个视图,该控件1在该待检测用户界面图像中的位置为(100,100,510,475),该控件2在该待检测用户界面图像中的位置为(0,0,80,75)。而在绘制该待检测用户界面图像时,若该终端设备的显示屏无法将该待检测用户界面图像全部进行展示,则可以通过获取每个视图在该待检测用户界面图像中的位置信息确定其在待检测用户界面图像进行滚动时时的具体显示位置。比如如图5所示,假设该控件1在该待检测用户界面图像中的位置为(100,100,510,475),该控件2在该待检测用户界面图像中的位置为(0,0,80,75),该控件3在该待检测用户界面图像中的位置为(0,600,80,75),该控件4在该待检测用户界面图像中的位置为(90,600,80,75)。若该待检测用户界面图像的底部确定为X轴和Y轴的零点,在该初始绘制时,从该待检测用户界面图像的顶部开始绘制,此时显示控件3和控件4;随着该待检测用户界面图像的滚动,将先展示该控件1,最后再展示该控件2。The position information is used to indicate the relative position of each view in the user interface image to be detected, which can be specifically stored in the form of x, y, width, and height. Among them, the x is used to indicate the starting point of the view on the X-axis of the user interface image to be detected; y is used to indicate the starting point of the view on the Y-axis of the user interface image to be detected; width is used to indicate the length of the view; height is used to indicate the height of the view. In an exemplary scheme, as shown in Figure 4, assuming that the control 1 corresponds to one view and the control 2 corresponds to another view, the position of the control 1 in the user interface image to be detected is (100, 100, 510, 475), and the position of the control 2 in the user interface image to be detected is (0, 0, 80, 75). When drawing the user interface image to be detected, if the display screen of the terminal device cannot display the entire user interface image to be detected, the specific display position of each view when the user interface image to be detected is scrolled can be determined by obtaining the position information of each view in the user interface image to be detected. For example, as shown in Figure 5, assuming that the position of the control 1 in the user interface image to be detected is (100, 100, 510, 475), the position of the control 2 in the user interface image to be detected is (0, 0, 80, 75), the position of the control 3 in the user interface image to be detected is (0, 600, 80, 75), and the position of the control 4 in the user interface image to be detected is (90, 600, 80, 75). If the bottom of the user interface image to be detected is determined as the zero point of the X-axis and the Y-axis, during the initial drawing, drawing starts from the top of the user interface image to be detected, and control 3 and control 4 are displayed at this time; as the user interface image to be detected scrolls, the control 1 will be displayed first, and then the control 2 will be displayed at last.
202、控制移动光标移动至该待检测用户界面图像的第一位置,并根据该第一位置确定检测浮层的第一作用范围,该移动光标用于在该待检测用户界面图像所处的界面上被移动,该检测浮层用于基于该移动光标所处的位置确定在该待检测用户界面图像获取待检测图层的范围,该检测浮层和该移动光标基于该渲染管线构建。202. Control the mobile cursor to move to the first position of the user interface image to be detected, and determine the first effective range of the detection floating layer according to the first position. The mobile cursor is used to be moved on the interface where the user interface image to be detected is located. The detection floating layer is used to determine the range of obtaining the layer to be detected in the user interface image to be detected based on the position of the mobile cursor. The detection floating layer and the mobile cursor are constructed based on the rendering pipeline.
本实施例中,在该终端设备在基于该CALayer渲染管线绘制该待检测用户界面图像时,还可以构建该检测浮层和该移动光标,且在该移动光标停止移动时,该终端设备将可以获取该移动光标在该终端设备的显示屏上的位置信息,并根据该位置信息确定该检测浮层对应的作用范围。该检测浮层在构建时具有触发获取其作用范围内的全部图层的功能。In this embodiment, when the terminal device draws the user interface image to be detected based on the CALayer rendering pipeline, the detection floating layer and the moving cursor can also be constructed, and when the moving cursor stops moving, the terminal device can obtain the position information of the moving cursor on the display screen of the terminal device, and determine the action range corresponding to the detection floating layer according to the position information. When the detection floating layer is constructed, it has the function of triggering the acquisition of all layers within its action range.
本实施例中,该移动光标可以是如图6所示的圆环形所示也可以是如图7所示三角形的。可以理解的是,该移动光标还可以为任何可见形状,例如圆形、手形标志等等。需要说明的是,本实施例中,该移动光标对应的图层显示层级需要设置为第一级(也就最高级),这样,就保证了该移动光标始终处于app中任何用户界面的最上方。当界面间跳转(比如切换另一个待检测用户界面图像)时,不会对其造成影响(即界面间跳转不会导致该移动光标不可见或被隐藏),从而可以方便对界面中任何UI控件进行探测。其中,在构建该移动光标时,需要定义该移动光标的属性(比如形状、尺寸、颜色、图层优先级等等)和方法(按压时触发的执行动作、松开时触发的执行动作、拖动时触发的执行动作等等)。而本实施例中,该检测浮层的大小与位置随着该移动光标所处的位置确定,而在该移动光标无动作或者所处位置无UI控件时,该检测浮层可以设置为隐藏。如图6所示,在该移动光标位于控件1所处的位置超过预设时间时,该检测浮层将隐藏。或者,如图7中的a所示,在该移动光标位于控件1与该控件2之间的位置时,该检测浮层将隐藏。而该移动光标移动到该控件2所处的位置时,如图7中的b所示,该检测浮层将会进行显示,并显示其作用范围。即该检测浮层将显示出一个区域,如图7中的b所示,此时该区域将可以将控件2全部包围。可以理解的是,该检测浮层可以是与该控件2重合,也可以是该检测浮层的边界与该控件2的边界各间距预设距离,且保证覆盖该控件2。而该检测浮层也可以是以透明的图层覆盖在该控件2上,也可以是以不透明的图层覆盖在该控件2上,具体此处不做限定。In this embodiment, the moving cursor can be a circular ring as shown in FIG. 6 or a triangle as shown in FIG. 7. It is understandable that the moving cursor can also be any visible shape, such as a circle, a hand sign, etc. It should be noted that in this embodiment, the layer display level corresponding to the moving cursor needs to be set to the first level (that is, the highest level), so that the moving cursor is always at the top of any user interface in the app. When jumping between interfaces (such as switching to another user interface image to be detected), it will not be affected (that is, jumping between interfaces will not cause the moving cursor to be invisible or hidden), so that any UI control in the interface can be easily detected. Among them, when constructing the moving cursor, it is necessary to define the properties of the moving cursor (such as shape, size, color, layer priority, etc.) and methods (execution actions triggered when pressed, execution actions triggered when released, execution actions triggered when dragged, etc.). In this embodiment, the size and position of the detection floating layer are determined according to the position of the moving cursor, and when the moving cursor has no action or there is no UI control at the position, the detection floating layer can be set to be hidden. As shown in Figure 6, when the moving cursor is located at the position of control 1 for more than a preset time, the detection floating layer will be hidden. Or, as shown in a in Figure 7, when the moving cursor is located between control 1 and control 2, the detection floating layer will be hidden. When the moving cursor moves to the position of control 2, as shown in b in Figure 7, the detection floating layer will be displayed and its scope of action will be displayed. That is, the detection floating layer will display an area, as shown in b in Figure 7, at which time the area will be able to completely surround control 2. It can be understood that the detection floating layer can overlap with the control 2, or the boundary of the detection floating layer and the boundary of the control 2 can be spaced at a preset distance, and the control 2 is guaranteed to be covered. The detection floating layer can also be covered on the control 2 with a transparent layer, or it can be covered on the control 2 with an opaque layer, which is not specifically limited here.
可以理解的是,本实施例中控制该移动光标移动的操作指令可以为按住该移动光标的同时并任意拖动该移动光标。其中,所述的按住并拖动可以是用户通过手指或触控笔等操作终端设备的触摸显示屏实现;也可以是用户通过鼠标操作终端设备的显示屏实现。另一种可能实现方式中,控制该移动光标移动的操作指令还可以为感应该移动光标,此时该终端设备应具有浮空触屏。当用户的手指(或其他合适的物体)与浮空触屏上显示的该移动光标的距离落入浮空触屏的感应范围时,该移动光标就可以感应用户的操作。其中,浮空触屏可以采用Floating Touch浮空触屏技术,浮空触屏让用户使用该终端设备时,无需触摸屏幕就可以完成相关操作。例如手指与浮空触屏保证约15毫米的距离就可以在终端设备上获得类似鼠标的操作,也就是说,只需将手指悬停于浮空触屏上方,便可操控终端设备。另一种可能实现方式中,控制该移动光标移动的操作指令还可以为感应该移动光标的同时并拖动,同样,此时终端设备应具有浮空触屏。当用户的手指(或其他合适的物体)与浮空触屏上显示的该移动光标的距离落入浮空触屏的感应范围时,该移动光标就可以感应所述用户的操作。在感应范围内,在感应的同时,用户的手指(或其他合适的物体)如果同时水平移动,则该移动光标会在浮空触屏上做相应的移动。It can be understood that in this embodiment, the operation instruction for controlling the movement of the moving cursor can be to press and hold the moving cursor and drag the moving cursor at will. Among them, the pressing and dragging can be realized by the user operating the touch display screen of the terminal device through fingers or stylus, etc.; it can also be realized by the user operating the display screen of the terminal device through a mouse. In another possible implementation, the operation instruction for controlling the movement of the moving cursor can also be to sense the moving cursor, and the terminal device should have a floating touch screen at this time. When the distance between the user's finger (or other suitable object) and the moving cursor displayed on the floating touch screen falls into the sensing range of the floating touch screen, the moving cursor can sense the user's operation. Among them, the floating touch screen can adopt the Floating Touch floating touch screen technology, and the floating touch screen allows the user to complete the relevant operations without touching the screen when using the terminal device. For example, the finger and the floating touch screen are kept at a distance of about 15 mm to obtain a mouse-like operation on the terminal device, that is, the terminal device can be controlled by simply hovering the finger above the floating touch screen. In another possible implementation, the operation instruction for controlling the movement of the moving cursor can also be to sense the moving cursor and drag it at the same time. Similarly, the terminal device should have a floating touch screen at this time. When the distance between the user's finger (or other suitable object) and the moving cursor displayed on the floating touch screen falls within the sensing range of the floating touch screen, the moving cursor can sense the user's operation. Within the sensing range, while sensing, if the user's finger (or other suitable object) moves horizontally at the same time, the moving cursor will move accordingly on the floating touch screen.
203、利用该检测浮层根据该第一作用范围从该待检测图层集合中获取第一图层集合。203. Obtain a first layer set from the set of layers to be detected according to the first action range by using the detection floating layer.
本申请实施例中,如果要获取待检测图层,则先需要获取该待检测图层对应的UI控件信息(即该第一图层集合),进而需要将该移动光标的轨迹映射到UI控件上。而一般情况下,对于一个app来说,其每个待检测用户界面图像中通常有多个UI控件,并且其中一些UI控件之间是存在父子关系的(即任何一个子UI控件的位置,都是相对于他的父UI控件的坐标系进行设置的)。以图8所示的三个UI控件1、2和3为例,1是2的父UI控件,对应的2是1的子UI控件;而2又是3的父UI控件,对应的3则是2的子UI控件。在空间位置关系上,由于2是1的子UI控件,因此2的图层是在1的图层上方,同理,3是2的子UI控件,因此3的图层是在2的图层上方。因一般情况下,对于一个app来说,其每个界面中通常有多个UI控件。在一些情况下,如果一个界面中的多个UI控件之间全都是位于同一图层级别的兄弟关系,而互不隶属时,则在扫描当前界面中所有在UI元素后,很容易检测出第一作用范围内的UI控件。然而,更多情况下,一个界面中有多个UI控件时,其中至少一部分UI部件之间是存在父子关系的。在此情况下,可通过以下方式确定第一作用范围处的UI控件。一个示例性方案中,首先,确定当前界面内所有UI控件中的各个根UI控件。其中,所述的根UI控件是指该UI控件不存在父UI控件,或者说根UI控件的父UI控件是UIView。其中,UIView表示屏幕上的一块矩形区域,它在app中占有绝对重要的地位,因为几乎所有可视化控件都是UIView的子类。其次,从所述各个根UI控件中,检测出位于第一作用范围的根UI控件。当然,在检测出位于第一作用范围处的根UI控件后,对于那些不在探测点位置处的根UI控件可以剔除或忽略,对应的,隶属于那些不在第一作用范围的根UI控件的UI控件,也会相应的被剔除或忽略。再次,确定位于第一作用范围的根UI控件的各个第一子UI控件。再次,从各个第一子UI控件中,检测出位于第一作用范围处的第一子UI控件。同样,在检测出位于第一作用范围的第一子UI控件后,可以剔除或忽略不在第一作用范围的第一子UI控件。然后,确定位于第一作用范围的第一子UI控件的各个第二子UI控件。依此递推,直至从所述当前界面内所有UI控件中,找出位于第一作用范围且其图层的显示级别为第二级的UI控件(即其图层的显示级别仅次于移动光标)。由此可见,本示例性实施例基于递归遍历的方式从图层的底层往上层一一探测,最终找出位于第一作用范围处且其图层的显示级别为第二级的UI控件,然后将检测出的所有位于第一作用范围处的UI控件对应的图层作为该第一图层集合。当然,在本申请其他示例性实施例中,所述检测也可采用其他方式实现,例如从图层的上层往底层一一探测。In the embodiment of the present application, if the layer to be detected is to be obtained, the UI control information corresponding to the layer to be detected (i.e., the first layer set) needs to be obtained first, and then the trajectory of the moving cursor needs to be mapped to the UI control. In general, for an app, there are usually multiple UI controls in each user interface image to be detected, and there is a parent-child relationship between some of the UI controls (i.e., the position of any child UI control is set relative to the coordinate system of his parent UI control). Taking the three UI controls 1, 2, and 3 shown in Figure 8 as an example, 1 is the parent UI control of 2, and the corresponding 2 is the child UI control of 1; and 2 is the parent UI control of 3, and the corresponding 3 is the child UI control of 2. In terms of spatial position relationship, since 2 is the child UI control of 1, the layer of 2 is above the layer of 1. Similarly, 3 is the child UI control of 2, so the layer of 3 is above the layer of 2. Because in general, for an app, there are usually multiple UI controls in each interface. In some cases, if multiple UI controls in an interface are all siblings at the same layer level and are not subordinate to each other, it is easy to detect the UI controls within the first scope of action after scanning all UI elements in the current interface. However, in more cases, when there are multiple UI controls in an interface, at least some of the UI components have a parent-child relationship. In this case, the UI controls at the first scope of action can be determined in the following way. In an exemplary scheme, first, each root UI control among all UI controls in the current interface is determined. Among them, the root UI control refers to the UI control that does not have a parent UI control, or the parent UI control of the root UI control is UIView. Among them, UIView represents a rectangular area on the screen, which occupies an absolutely important position in the app because almost all visual controls are subclasses of UIView. Secondly, from the root UI controls, the root UI controls located in the first scope of action are detected. Of course, after detecting the root UI controls located at the first scope of action, those root UI controls that are not at the detection point position can be eliminated or ignored, and correspondingly, the UI controls belonging to those root UI controls that are not in the first scope of action will also be eliminated or ignored accordingly. Again, determine each first sub-UI control of the root UI control located in the first scope of action. Again, from each first sub-UI control, detect the first sub-UI control located in the first scope of action. Similarly, after detecting the first sub-UI control located in the first scope of action, the first sub-UI control that is not in the first scope of action can be eliminated or ignored. Then, determine each second sub-UI control of the first sub-UI control located in the first scope of action. In this way, recursively, until a UI control located in the first scope of action and whose layer display level is the second level (that is, the display level of its layer is second only to the moving cursor) is found from all UI controls in the current interface. It can be seen that this exemplary embodiment detects one by one from the bottom layer to the upper layer of the layer based on a recursive traversal method, and finally finds the UI control located in the first scope of action and whose layer display level is the second level, and then uses the layers corresponding to all the detected UI controls located in the first scope of action as the first layer set. Of course, in other exemplary embodiments of the present application, the detection can also be implemented in other ways, such as detecting one by one from the upper layer of the layer to the bottom layer.
204、从该第一图层集合中搜索得到第一待检测图层。204. Search and obtain a first layer to be detected from the first layer set.
本实施例中,该终端设备可以利用广度优先搜索算法从所述第一图层集合中搜索得到所述第一待检测图层,其具体流程可以如图9所示:In this embodiment, the terminal device may use a breadth-first search algorithm to search for the first layer to be detected from the first layer set, and the specific process may be shown in FIG. 9 :
首先,该终端设备根据该第一图层集合创建全局队列。该终端设备所述第一图层集合中根节点图层为基础对所述第一图层集合中的各个图层进行像素点扫描生成所述第一图层集合对应的多个图层树结构,并根据所述多个图层树结构生成多个任务队列,其中每一个图层树结构对应一个任务队列。本实施例中,可以为该图层树结构中的每个图层节点设置三种状态:未访问状态、已经访问状态和已经标记状态。其中,该未访问状态可以设置为每个图层节点的初始状态。该已经访问状态用于指示已经遍历访问到该图层节点且该图层节点的类信息不在公共类匹配模板中。该已经标识状态用于指示在遍历访问到该图层节点时,该图层节点的类信息为公共类匹配模板(即不用验收的UI控件)。在此过程中,假设该第一图层集合中的图层根节点为点选控件,而待检测图层为按钮1,则在移动光标移动到按钮1对应的UI控件之后开始对点选控件的像素点进行扫描,从而获取到各个层级的图层,并构成任务队列。First, the terminal device creates a global queue based on the first layer set. The terminal device scans the pixels of each layer in the first layer set based on the root node layer in the first layer set to generate multiple layer tree structures corresponding to the first layer set, and generates multiple task queues based on the multiple layer tree structures, wherein each layer tree structure corresponds to a task queue. In this embodiment, three states can be set for each layer node in the layer tree structure: unvisited state, visited state, and marked state. Among them, the unvisited state can be set as the initial state of each layer node. The visited state is used to indicate that the layer node has been traversed and accessed and the class information of the layer node is not in the public class matching template. The marked state is used to indicate that when the layer node is traversed and accessed, the class information of the layer node is a public class matching template (i.e., a UI control that does not need to be accepted). In this process, assuming that the layer root node in the first layer set is a click control, and the layer to be detected is button 1, after moving the cursor to the UI control corresponding to button 1, the pixel points of the click control are scanned, thereby obtaining layers of each level and forming a task queue.
然后,该终端设备按照任务队列的先进先出处理规则依次识别每个任务队列中的图层节点的类信息和状态信息,所述类信息用于描述图层节点的属性及方法。Then, the terminal device identifies the class information and status information of the layer nodes in each task queue in turn according to the first-in-first-out processing rule of the task queue, and the class information is used to describe the properties and methods of the layer nodes.
再其次,该终端设备判断该图层节点的状态信息,在该状态信息为未访问状态时,该终端设备判断该图层节点的类信息是否存在于公共类匹配模板,若确定所述类信息存在于公共类匹配模板,则确定图层节点为不需要验收的图层节点,并将该图层节点和其对应的图层子节点的状态设置为已标记状态。若确定所述类信息不存在于所述公共类匹配模板时,将所述类信息对应的图层节点归为第二图层节点集合,所述第二图层节点集合中的各个图层节点的状态设置为已访问状态,并获取该第二图层节点集合中各个图层节点的数据信息并缓存。其中,所述公共类匹配模块为不需要验收的用户界面元素的类信息,比如在实际的页面检测过程中,系统级别的视图如tabbar,nativationBar。这些视图的尺寸、颜色、坐标和文案都是固定不变的,因此不需要做检测和验收。若该图层节点的状态的状态信息为已访问状态,则该终端可以直接读取该图层节点已缓存的数据信息。若该图层节点的状态信息为已标记,则直接跳过该图层节点以及其子图层节点。Secondly, the terminal device determines the state information of the layer node. When the state information is in the unaccessed state, the terminal device determines whether the class information of the layer node exists in the public class matching template. If it is determined that the class information exists in the public class matching template, the layer node is determined to be a layer node that does not require acceptance, and the state of the layer node and its corresponding layer subnode is set to a marked state. If it is determined that the class information does not exist in the public class matching template, the layer node corresponding to the class information is classified as a second layer node set, the state of each layer node in the second layer node set is set to an accessed state, and the data information of each layer node in the second layer node set is obtained and cached. Among them, the public class matching module is the class information of the user interface element that does not require acceptance, such as the system-level views such as tabbar and nativationBar in the actual page detection process. The size, color, coordinates and text of these views are fixed, so there is no need for detection and acceptance. If the state information of the state of the layer node is an accessed state, the terminal can directly read the cached data information of the layer node. If the state information of the layer node is marked, the layer node and its sub-layer nodes are directly skipped.
再其次,该终端设备根据所述移动光标的第一位置从所述第二图层节点集合中获取第三图层节点集合。Next, the terminal device obtains a third layer node set from the second layer node set according to the first position of the moving cursor.
最后,该终端设备从所述第三图层节点集合中获取所述第一待检测图层。Finally, the terminal device obtains the first layer to be detected from the third layer node set.
本实施例中,该终端设备在确定该第二图层节点集合之后,该终端设备还可以获取所述第二图层节点集合中的各个图层节点的第一数据信息集合;以所述检测浮层为根视图创建第一弹窗,并从所述第一数据信息集合中选择所述第三图层节点集合对应的数据信息显示在所述第一弹窗中。本实施例中,该数据信息可以包含阴影方向、阴影的偏移像素、圆角边框,内边距等信息。而该终端设备在将该数据信息进行展示时,该终端设备可以将该数据信息以字段的形式显示在该弹窗中,其内容可以包括指定视图的类名称、frame坐标、背景颜色、文字颜色、字体、字号等信息。一个示例性方案中,该显示结果可以如图9a所示,其显示内容可以包括类名称为“UILabel”,其frame坐标为“{{32,54},{272,22.5}}”,其背景颜色为“clear color”,其文字颜色为“#999999”,其字号为“16”等等。可以理解是,该弹窗中可以只显示一个图层的数据信息,而当需要获取该图层对应的子图层节点以及父图层节点的数据信息时,可以通过点击如图9a中的节点点选控件(如“父节点”和“子节点”控件)进行查看。In this embodiment, after determining the second layer node set, the terminal device can also obtain the first data information set of each layer node in the second layer node set; create a first pop-up window with the detection floating layer as the root view, and select the data information corresponding to the third layer node set from the first data information set to display in the first pop-up window. In this embodiment, the data information may include information such as shadow direction, shadow offset pixels, rounded border, inner margin, etc. When the terminal device displays the data information, the terminal device can display the data information in the pop-up window in the form of a field, and its content may include the class name, frame coordinates, background color, text color, font, font size, etc. of the specified view. In an exemplary solution, the display result can be shown in Figure 9a, and its display content may include a class name of "UILabel", a frame coordinate of "{{32, 54}, {272, 22.5}}", a background color of "clear color", a text color of "#999999", a font size of "16", and so on. It can be understood that the pop-up window can only display the data information of one layer, and when it is necessary to obtain the data information of the sub-layer node and the parent layer node corresponding to the layer, it can be viewed by clicking the node selection control (such as the "parent node" and "child node" controls) as shown in Figure 9a.
205、将该待检测图层与标准图层进行比对得到验收结果。205. Compare the layer to be tested with the standard layer to obtain an acceptance result.
本实施例中,该终端设备可以通过脚本或者手动方式将该待检测图层与该设计人员设计的标准图层进行比对得到相似度或坐标从而得到验收结果。In this embodiment, the terminal device can compare the layer to be detected with the standard layer designed by the designer through a script or manually to obtain similarity or coordinates to obtain an acceptance result.
下面对本申请中的用户界面验收装置进行详细描述,请参阅图10,图10为本申请实施例中用户界面验收装置的一个实施例示意图,用户界面验收装置20包括:The user interface acceptance device in the present application is described in detail below. Please refer to FIG. 10 . FIG. 10 is a schematic diagram of an embodiment of the user interface acceptance device in the present application. The user interface acceptance device 20 includes:
生成模块201,用于构建CALayer渲染管线,并利用该渲染管线绘制待检测用户界面图像,该待检测用户界面图像包括待检测图层集合,且该待检测图层集合构成多个图层树结构;A generation module 201 is used to construct a CALayer rendering pipeline and use the rendering pipeline to draw a user interface image to be detected, where the user interface image to be detected includes a layer set to be detected, and the layer set to be detected constitutes a plurality of layer tree structures;
确定模块202,用于控制移动光标移动至该待检测用户界面图像的第一位置,并根据该第一位置确定检测浮层的第一作用范围,该移动光标用于在该待检测用户界面图像所处的界面上被移动,该检测浮层用于基于该移动光标所处的位置确定在该待检测用户界面图像获取待检测图层的范围,该检测浮层和该移动光标基于该渲染管线构建;A determination module 202 is used to control a moving cursor to move to a first position of the user interface image to be detected, and determine a first action range of a detection floating layer according to the first position, wherein the moving cursor is used to be moved on the interface where the user interface image to be detected is located, and the detection floating layer is used to determine a range of obtaining a layer to be detected in the user interface image to be detected based on the position of the moving cursor, and the detection floating layer and the moving cursor are constructed based on the rendering pipeline;
获取模块203,用于利用该检测浮层根据该第一作用范围从该待检测图层集合中获取第一图层集合;An acquisition module 203 is used to acquire a first layer set from the to-be-detected layer set according to the first action range by using the detection floating layer;
搜索模块204,用于从该第一图层集合中搜索得到第一待检测图层;A search module 204, configured to search for a first layer to be detected from the first layer set;
验收模块205,用于将该待检测图层与标准图层进行比对得到验收结果。The acceptance module 205 is used to compare the layer to be inspected with the standard layer to obtain an acceptance result.
本申请实施例中,提供了一种用户界面验收装置。采用上述装置,在应用程序内构建CALayer渲染管线,然后根据该CALayer渲染管线绘制待检测用户界面图像,并通过该CALayer渲染管线构建的移动光标和该检测浮层获取待检测图层,使得运行该应用程序的终端就可以获取该待检测图层,并根据该待检测图层实现验收过程,不必与第三方验收平台进行数据交互,从而提高了用户界面验收的灵活性。In an embodiment of the present application, a user interface acceptance device is provided. The above device is used to construct a CALayer rendering pipeline in the application, and then the user interface image to be detected is drawn according to the CALayer rendering pipeline, and the layer to be detected is obtained through the moving cursor constructed by the CALayer rendering pipeline and the detection floating layer, so that the terminal running the application can obtain the layer to be detected, and implement the acceptance process according to the layer to be detected, without having to interact with the third-party acceptance platform for data, thereby improving the flexibility of user interface acceptance.
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的用户界面验收装置20的另一实施例中,Optionally, based on the embodiment corresponding to FIG. 10 , in another embodiment of the user interface acceptance device 20 provided in the embodiment of the present application,
该生成模块201,具体用于利用该渲染管线获取待检测用户界面图像的上下文信息,该上下文信息包括该待检测用户界面图像的视图数据、视图生命周期、该待检测用户界面图像中各个视图相对于该待检测用户界面图像的位置信息以及该待检测用户界面图像的状态信息;The generating module 201 is specifically used to obtain context information of the user interface image to be detected by using the rendering pipeline, where the context information includes view data of the user interface image to be detected, view life cycle, position information of each view in the user interface image to be detected relative to the user interface image to be detected, and state information of the user interface image to be detected;
利用该渲染管线根据该上下文信息生成待检测图层集合;Generate a set of layers to be detected according to the context information using the rendering pipeline;
利用该渲染管线将该待检测图层集合生成对应的图层树结构,并根据该图层树结构得到该待检测用户界面图像。The rendering pipeline is used to generate a corresponding layer tree structure for the layer set to be detected, and the user interface image to be detected is obtained according to the layer tree structure.
本申请实施例中,提供了一种用户界面验收装置。采用上述装置,基于该CALayer渲染管线获取该待检测用户界面图像的全部视图信息,然后基于该视图信息绘制该待检测用户界面、检测浮层以及移动光标。这样使得该待检测用户界面的全部图层信息都可以CALayer渲染管线获取,从而使得运行该应用程序的终端就可以获取该待检测图层,不必与第三方验收平台进行数据交互,从而提高了用户界面验收的灵活性。In an embodiment of the present application, a user interface acceptance device is provided. Using the above device, all view information of the user interface image to be detected is obtained based on the CALayer rendering pipeline, and then the user interface to be detected, the floating layer is detected, and the cursor is moved based on the view information. In this way, all layer information of the user interface to be detected can be obtained by the CALayer rendering pipeline, so that the terminal running the application can obtain the layer to be detected without having to interact with the third-party acceptance platform for data, thereby improving the flexibility of user interface acceptance.
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的用户界面验收装置20的另一实施例中,该搜索模块204,具体用于利用广度优先搜索算法从该第一图层集合中搜索得到该第一待检测图层。Optionally, based on the embodiment corresponding to the above-mentioned Figure 10, in another embodiment of the user interface acceptance device 20 provided in the embodiment of the present application, the search module 204 is specifically used to search for the first layer to be detected from the first layer set using a breadth-first search algorithm.
本申请实施例中,提供了一种用户界面验收装置。采用上述装置,使用广度优先搜索算法可以将待检测用户界面上的各个UI元素解析为树和图的数据结构,从而能够针对特定UI元素进行检测,实现终端内获取待检测图层的功能,不必与第三方验收平台进行数据交互,从而提高了用户界面验收的灵活性。In an embodiment of the present application, a user interface acceptance device is provided. With the above device, each UI element on the user interface to be detected can be parsed into a tree and graph data structure using a breadth-first search algorithm, so that specific UI elements can be detected, and the function of obtaining the layer to be detected in the terminal is realized, without the need to interact with the third-party acceptance platform for data, thereby improving the flexibility of user interface acceptance.
可选地,在上述图10所对应的实施例的基础上,本申请实施例提供的用户界面验收装置20的另一实施例中,Optionally, based on the embodiment corresponding to FIG. 10 , in another embodiment of the user interface acceptance device 20 provided in the embodiment of the present application,
该搜索模块204,具体用于以该第一图层集合中根节点图层为基础对该第一图层集合中的各个图层进行像素点扫描生成该第一图层集合对应的多个图层树结构,并根据该多个图层树结构生成多个任务队列,其中每一个图层树结构对应一个任务队列;The search module 204 is specifically used to perform pixel point scanning on each layer in the first layer set based on the root node layer in the first layer set to generate multiple layer tree structures corresponding to the first layer set, and generate multiple task queues according to the multiple layer tree structures, wherein each layer tree structure corresponds to a task queue;
按照队列处理规则依次识别每个任务队列中的图层节点的类信息,该类信息用于描述图层节点的属性及方法;According to the queue processing rules, the class information of the layer nodes in each task queue is identified in turn. The class information is used to describe the properties and methods of the layer nodes.
在确定该类信息存在于公共类匹配模板时,确定该类信息对应的图层节点为不需要验收的图层节点,并将该类信息对应的图层节点和其对应的图层子节点的状态设置为已标记状态;When it is determined that the information of this type exists in the common class matching template, the layer node corresponding to the information of this type is determined to be a layer node that does not need to be accepted, and the state of the layer node corresponding to the information of this type and its corresponding layer subnode is set to a marked state;
在确定该类信息不存在于该公共类匹配模板时,将该类信息对应的图层节点归为第二图层节点集合,该第二图层节点集合中的各个图层节点的状态设置为已访问状态;When it is determined that the information of this type does not exist in the common class matching template, the layer nodes corresponding to the information of this type are classified into a second layer node set, and the state of each layer node in the second layer node set is set to an accessed state;
根据该移动光标的第一位置从该第二图层节点集合中获取第三图层节点集合;Acquire a third layer node set from the second layer node set according to the first position of the moving cursor;
从该第三图层节点集合中获取该第一待检测图层。The first layer to be detected is obtained from the third layer node set.
本申请实施例中,提供了一种用户界面验收装置。采用上述装置,使用广度优先搜索算法可以将待检测用户界面上的各个UI元素解析为树和图的数据结构,从而能够针对特定UI元素进行检测,同时通类模板在设置各个图层的状态信息,从而减少在广度优先搜索过程各的匹配次数,提升搜索效率。In an embodiment of the present application, a user interface acceptance device is provided. With the above device, each UI element on the user interface to be detected can be parsed into a tree and graph data structure using a breadth-first search algorithm, so that specific UI elements can be detected. At the same time, the general template sets the status information of each layer, thereby reducing the number of matches in the breadth-first search process and improving the search efficiency.
可选地,在上述图10所对应的实施例的基础上,如图10a所示,本申请实施例提供的用户界面验收装置20的另一实施例中,Optionally, based on the embodiment corresponding to FIG. 10 above, as shown in FIG. 10a, in another embodiment of the user interface acceptance device 20 provided in the embodiment of the present application,
该获取模块203,还用于获取该第二图层节点集合中的各个图层节点的第一数据信息集合;The acquisition module 203 is further used to acquire a first data information set of each layer node in the second layer node set;
该生成模块201,还用于以该检测浮层为根视图创建第一弹窗;The generating module 201 is further used to create a first pop-up window with the detection floating layer as the root view;
该装置还包括显示模块206,用于从该第一数据信息集合中选择该第三图层节点集合对应的数据信息显示在该第一弹窗中。The device also includes a display module 206, which is used to select data information corresponding to the third layer node set from the first data information set and display it in the first pop-up window.
本申请实施例中,提供了一种用户界面验收装置。采用上述装置,通过CALayer渲染管线可以获取到各个图层的数据信息,然后通过可视化界面将各个图层的信息进行展示,这样可以可以让用户直观的获取到图层的信息,使得用户可以对各个图层的信息进行初步筛查,从而提高用户界面的验收效率。In an embodiment of the present application, a user interface acceptance device is provided. With the above device, data information of each layer can be obtained through the CALayer rendering pipeline, and then the information of each layer can be displayed through a visual interface, so that the user can intuitively obtain the information of the layer, so that the user can perform a preliminary screening of the information of each layer, thereby improving the acceptance efficiency of the user interface.
可选地,在上述图10a所对应的实施例的基础上,如图10b所示,本申请实施例提供的用户界面验收装置20的另一实施例中,该装置还包括存储模块207,用于将该第一数据信息集合缓存至该检测浮层对应的存储介质。Optionally, based on the embodiment corresponding to the above-mentioned Figure 10a, as shown in Figure 10b, in another embodiment of the user interface acceptance device 20 provided in the embodiment of the present application, the device also includes a storage module 207 for caching the first data information set to the storage medium corresponding to the detection floating layer.
本申请实施例中,提供了一种用户界面验收装置。采用上述装置,将一次检测过程中获取到的需要进行验收的图层进行存储,这样可以减少搜索过程中数据信息的获取过程,从而提升图层数据信息的获取效率。In an embodiment of the present application, a user interface acceptance device is provided. By using the above device, the layers required for acceptance obtained during a detection process are stored, which can reduce the process of obtaining data information during the search process, thereby improving the efficiency of obtaining layer data information.
可选地,在上述图10b所对应的实施例的基础上,如图10c所示,本申请实施例提供的用户界面验收装置20的另一实施例中,该确定模块202,还用于控制该移动光标移动至第二位置,并获取该第二位置对应的第四图层节点集合;Optionally, based on the embodiment corresponding to FIG. 10b above, as shown in FIG. 10c, in another embodiment of the user interface acceptance device 20 provided in the embodiment of the present application, the determination module 202 is further used to control the moving cursor to move to a second position, and obtain a fourth layer node set corresponding to the second position;
该装置还包括读取模块208,用于在该第四图层节点集合中存在包含于该第二图层节点集合中的图层节点时,从该检测浮层缓存的该第一数据信息集合中读取该第四图层集合对应的数据信息;The device further includes a reading module 208, which is used to read data information corresponding to the fourth layer set from the first data information set of the detection floating layer cache when there is a layer node included in the second layer node set in the fourth layer node set;
该生成模块201,还用于以该检测浮层为根视图创建第二弹窗;The generating module 201 is further used to create a second pop-up window with the detection floating layer as the root view;
该装置还包括显示模块206,用于将该第四图层节点集合对应的数据信息显示在该第二弹窗中。The device also includes a display module 206, which is used to display the data information corresponding to the fourth layer node set in the second pop-up window.
本申请实施例中,提供了一种用户界面验收装置。采用上述装置,将一次检测过程中获取到的需要进行验收的图层进行存储,这样可以减少搜索过程中数据信息的获取过程,从而提升图层数据信息的获取效率。In an embodiment of the present application, a user interface acceptance device is provided. By using the above device, the layers required for acceptance obtained during a detection process are stored, which can reduce the process of obtaining data information during the search process, thereby improving the efficiency of obtaining layer data information.
本申请提供的用户界面验收装置可以为于服务器,请参阅图11,图11是本申请实施例提供的一种服务器结构示意图,该服务器300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在服务器300上执行存储介质330中的一系列指令操作。The user interface acceptance device provided in the present application can be used for a server. Please refer to Figure 11. Figure 11 is a schematic diagram of a server structure provided in an embodiment of the present application. The server 300 may have relatively large differences due to different configurations or performances, and may include one or more central processing units (CPU) 322 (for example, one or more processors) and memory 332, and one or more storage media 330 (for example, one or more mass storage devices) storing application programs 342 or data 344. Among them, the memory 332 and the storage medium 330 can be short-term storage or permanent storage. The program stored in the storage medium 330 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the server. Furthermore, the central processor 322 can be configured to communicate with the storage medium 330 and execute a series of instruction operations in the storage medium 330 on the server 300.
服务器300还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。The server 300 may also include one or more power supplies 326, one or more wired or wireless network interfaces 350, one or more input and output interfaces 358, and/or one or more operating systems 341, such as Windows Server ™ , Mac OS X ™ , Unix ™ , Linux ™ , FreeBSD ™ , etc.
上述实施例中所执行的步骤可以基于该图11所示的服务器结构。The steps performed in the above embodiment may be based on the server structure shown in FIG. 11 .
本申请提供的用户界面验收装置可以为终端设备,请参阅图12,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。在本申请实施例中,以终端设备为智能手机为例进行说明:The user interface acceptance device provided in this application can be a terminal device. Please refer to Figure 12. For the convenience of explanation, only the part related to the embodiment of this application is shown. For specific technical details not disclosed, please refer to the method part of the embodiment of this application. In the embodiment of this application, the terminal device is a smart phone as an example for explanation:
图12示出的是与本申请实施例提供的终端设备相关的智能手机的部分结构的框图。参考图12,智能手机包括:射频(radio frequency,RF)电路410、存储器420、输入单元430、显示单元440、传感器450、音频电路460、无线保真(wireless fidelity,WiFi)模块470、处理器480、以及电源490等部件。本领域技术人员可以理解,图12中示出的智能手机结构并不构成对智能手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。FIG12 is a block diagram showing a partial structure of a smartphone related to a terminal device provided in an embodiment of the present application. Referring to FIG12 , the smartphone includes components such as a radio frequency (RF) circuit 410, a memory 420, an input unit 430, a display unit 440, a sensor 450, an audio circuit 460, a wireless fidelity (WiFi) module 470, a processor 480, and a power supply 490. Those skilled in the art will appreciate that the smartphone structure shown in FIG12 does not constitute a limitation on the smartphone, and may include more or fewer components than shown, or combine certain components, or arrange the components differently.
下面结合图12对智能手机的各个构成部件进行具体的介绍:The following is a detailed introduction to the various components of the smartphone in conjunction with FIG12:
RF电路410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器480处理;另外,将设计上行的数据发送给基站。通常,RF电路410包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noiseamplifier,LNA)、双工器等。此外,RF电路410还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystem of mobile communication,GSM)、通用分组无线服务(general packet radioservice,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分多址(wideband code division multiple access,WCDMA)、长期演进(long term evolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。The RF circuit 410 can be used for receiving and sending signals during information transmission or calls. In particular, after receiving the downlink information of the base station, it is sent to the processor 480 for processing; in addition, the designed uplink data is sent to the base station. Generally, the RF circuit 410 includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (LNA), a duplexer, etc. In addition, the RF circuit 410 can also communicate with the network and other devices through wireless communication. The above wireless communication can use any communication standard or protocol, including but not limited to the global system of mobile communication (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), long term evolution (LTE), email, short messaging service (SMS), etc.
存储器420可用于存储软件程序以及模块,处理器480通过运行存储在存储器420的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。The memory 420 can be used to store software programs and modules. The processor 480 executes various functional applications and data processing of the smartphone by running the software programs and modules stored in the memory 420. The memory 420 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area may store data created according to the use of the smartphone (such as audio data, a phone book, etc.), etc. In addition, the memory 420 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.
输入单元430可用于接收输入的数字或字符信息,以及产生与智能手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元430可包括触控面板431以及其他输入设备432。触控面板431,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板431上或在触控面板431附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板431可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器480,并能接收处理器480发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板431。除了触控面板431,输入单元430还可以包括其他输入设备432。具体地,其他输入设备432可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。The input unit 430 can be used to receive input digital or character information, and to generate key signal input related to the user settings and function control of the smart phone. Specifically, the input unit 430 may include a touch panel 431 and other input devices 432. The touch panel 431, also known as a touch screen, can collect the user's touch operation on or near it (such as the user's operation on the touch panel 431 or near the touch panel 431 using any suitable object or accessory such as a finger, stylus, etc.), and drive the corresponding connection device according to a pre-set program. Optionally, the touch panel 431 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch orientation, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into the contact coordinates, and then sends it to the processor 480, and can receive and execute the command sent by the processor 480. In addition, the touch panel 431 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves. In addition to the touch panel 431, the input unit 430 may also include other input devices 432. Specifically, other input devices 432 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, and the like.
显示单元440可用于显示由用户输入的信息或提供给用户的信息以及智能手机的各种菜单。显示单元440可包括显示面板441,可选的,可以采用液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板441。进一步的,触控面板431可覆盖显示面板441,当触控面板431检测到在其上或附近的触摸操作后,传送给处理器480以确定触摸事件的类型,随后处理器480根据触摸事件的类型在显示面板441上提供相应的视觉输出。虽然在图12中,触控面板431与显示面板441是作为两个独立的部件来实现智能手机的输入和输入功能,但是在某些实施例中,可以将触控面板431与显示面板441集成而实现智能手机的输入和输出功能。The display unit 440 can be used to display information input by the user or information provided to the user and various menus of the smart phone. The display unit 440 may include a display panel 441, and optionally, the display panel 441 may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), etc. Further, the touch panel 431 may cover the display panel 441, and when the touch panel 431 detects a touch operation on or near it, it is transmitted to the processor 480 to determine the type of the touch event, and then the processor 480 provides a corresponding visual output on the display panel 441 according to the type of the touch event. Although in Figure 12, the touch panel 431 and the display panel 441 are used as two independent components to realize the input and output functions of the smart phone, in some embodiments, the touch panel 431 and the display panel 441 can be integrated to realize the input and output functions of the smart phone.
智能手机还可包括至少一种传感器450,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板441的亮度,接近传感器可在智能手机移动到耳边时,关闭显示面板441和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别智能手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于智能手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。The smartphone may also include at least one sensor 450, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 441 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 441 and/or the backlight when the smartphone is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that identify the posture of smartphones (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometers, tapping), etc.; as for other sensors that can be configured in smartphones, such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc., they will not be repeated here.
音频电路460、扬声器461,传声器462可提供用户与智能手机之间的音频接口。音频电路460可将接收到的音频数据转换后的电信号,传输到扬声器461,由扬声器461转换为声音信号输出;另一方面,传声器462将收集的声音信号转换为电信号,由音频电路460接收后转换为音频数据,再将音频数据输出处理器480处理后,经RF电路410以发送给比如另一智能手机,或者将音频数据输出至存储器420以便进一步处理。The audio circuit 460, the speaker 461, and the microphone 462 can provide an audio interface between the user and the smartphone. The audio circuit 460 can transmit the received audio data to the speaker 461 after converting the received audio data into an electrical signal, which is converted into a sound signal for output; on the other hand, the microphone 462 converts the collected sound signal into an electrical signal, which is received by the audio circuit 460 and converted into audio data, and then the audio data is output to the processor 480 for processing, and then sent to another smartphone through the RF circuit 410, or the audio data is output to the memory 420 for further processing.
WiFi属于短距离无线传输技术,智能手机通过WiFi模块470可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图12示出了WiFi模块470,但是可以理解的是,其并不属于智能手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。WiFi is a short-range wireless transmission technology. Smartphones can help users send and receive emails, browse web pages, and access streaming media through WiFi module 470, which provides users with wireless broadband Internet access. Although FIG. 12 shows WiFi module 470, it is understandable that it is not a necessary component of the smartphone and can be omitted as needed without changing the essence of the invention.
处理器480是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行智能手机的各种功能和处理数据,从而对智能手机进行整体监测。可选的,处理器480可包括一个或多个处理单元;可选的,处理器480可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器480中。Processor 480 is the control center of the smartphone, which uses various interfaces and lines to connect various parts of the entire smartphone, and executes various functions of the smartphone and processes data by running or executing software programs and/or modules stored in memory 420, and calling data stored in memory 420, so as to monitor the smartphone as a whole. Optionally, processor 480 may include one or more processing units; optionally, processor 480 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into processor 480.
智能手机还包括给各个部件供电的电源490(比如电池),可选的,电源可以通过电源管理系统与处理器480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。The smart phone also includes a power source 490 (such as a battery) for supplying power to various components. Optionally, the power source can be logically connected to the processor 480 through a power management system, thereby managing functions such as charging, discharging, and power consumption management through the power management system.
尽管未示出,智能手机还可以包括摄像头、蓝牙模块等,在此不再赘述。Although not shown, the smartphone may also include a camera, a Bluetooth module, etc., which will not be described in detail here.
上述实施例中所执行的步骤可以基于该图12所示的终端设备结构。The steps performed in the above embodiment may be based on the terminal device structure shown in FIG. 12 .
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如前述各个实施例描述的方法。A computer-readable storage medium is also provided in an embodiment of the present application. The computer-readable storage medium stores a computer program, which, when executed on a computer, enables the computer to execute the methods described in the aforementioned embodiments.
本申请实施例中还提供一种包括程序的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例描述的方法。A computer program product including a program is also provided in an embodiment of the present application. When the program is run on a computer, the computer is enabled to execute the methods described in the aforementioned embodiments.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the unit is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it. Although the present application has been described in detail with reference to the aforementioned embodiments, a person of ordinary skill in the art should understand that the technical solutions described in the aforementioned embodiments can still be modified, or some of the technical features therein can be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211456907.XA CN118057333A (en) | 2022-11-21 | 2022-11-21 | Acceptance method, device, equipment and storage medium for user interface design |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211456907.XA CN118057333A (en) | 2022-11-21 | 2022-11-21 | Acceptance method, device, equipment and storage medium for user interface design |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN118057333A true CN118057333A (en) | 2024-05-21 |
Family
ID=91069368
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202211456907.XA Pending CN118057333A (en) | 2022-11-21 | 2022-11-21 | Acceptance method, device, equipment and storage medium for user interface design |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN118057333A (en) |
-
2022
- 2022-11-21 CN CN202211456907.XA patent/CN118057333A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN106970790B (en) | Application program creating method, related equipment and system | |
| CN108846087A (en) | A kind of page rendering method, apparatus, terminal and server | |
| CN118519553B (en) | Application data processing method and device and terminal equipment | |
| CN111125269B (en) | Data management method, blood relationship display method and related device | |
| CN115174733A (en) | Interface display method, device and equipment | |
| CN108156508B (en) | Barrage information processing method and device, mobile terminal, server and system | |
| US10235024B2 (en) | Buddy list presentation control method and system, and computer storage medium | |
| JP7236551B2 (en) | CHARACTER RECOMMENDATION METHOD, CHARACTER RECOMMENDATION DEVICE, COMPUTER AND PROGRAM | |
| CN109154946A (en) | A method and terminal for displaying favorite objects | |
| CN107436948B (en) | File searching method and device and terminal | |
| WO2021047230A1 (en) | Method and apparatus for obtaining screenshot information | |
| CN113220848B (en) | Automatic question-answering method, device and intelligent device for human-computer interaction | |
| CN110069188B (en) | Identification display method and terminal equipment | |
| CN106951492B (en) | File search method, device and electronic device | |
| CN110633438A (en) | Method, terminal, server and storage medium for news event processing | |
| CN117289831A (en) | Page interaction method and device, electronic equipment and storage medium | |
| CN106230919B (en) | File uploading method and device | |
| CN110149408B (en) | Service data display method and device, terminal and server | |
| CN109739409A (en) | A kind of method, apparatus and terminal device of batch processing | |
| CN107589954A (en) | Application program updating method, device, terminal and computer-readable storage medium | |
| CN109948095B (en) | Method, device, terminal and storage medium for displaying webpage content | |
| CN110889002A (en) | Image display method and electronic device | |
| CN118057333A (en) | Acceptance method, device, equipment and storage medium for user interface design | |
| CN114579856A (en) | Method, device, device and storage medium for collecting page information | |
| CN113190774A (en) | Object display method and device, electronic equipment and storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination |