CN110083417B - 用户界面响应方法和装置 - Google Patents
用户界面响应方法和装置 Download PDFInfo
- Publication number
- CN110083417B CN110083417B CN201910271838.7A CN201910271838A CN110083417B CN 110083417 B CN110083417 B CN 110083417B CN 201910271838 A CN201910271838 A CN 201910271838A CN 110083417 B CN110083417 B CN 110083417B
- Authority
- CN
- China
- Prior art keywords
- interface
- data
- current
- comparison task
- user
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000004044 response Effects 0.000 title claims abstract description 27
- 238000009877 rendering Methods 0.000 claims description 38
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 12
- 238000010276 construction Methods 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 230000006399 behavior Effects 0.000 description 4
- 239000000725 suspension Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提出一种用户界面响应方法和装置,其中,方法包括:获取界面更新指令,根据界面更新指令获取待更新界面的第一界面数据;构建第一界面数据和当前界面的第二界面数据的比较任务,其中,比较任务中包含至少一个暂停位置;在执行比较任务时,若执行至暂停位置则检测是否接收到用户针对当前界面的操作指令;若在当前暂停位置接收到操作指令,则控制比较任务在当前暂停位置暂停,直至控制当前界面响应操作指令后,从当前暂停位置继续执行比较任务。由此,实现了在界面进行更新时也可以响应用户的操作指令,避免了在界面更新数据较大时导致的界面卡顿,提升了用户体验。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种用户界面响应方法和装置。
背景技术
随着计算机技术的发展,各种小程序越发的流行,比如,支付宝小程序、淘宝小程序等,随着小程序应用的广泛,用户对小程序的性能敏感性的需求也越来越高。
相关技术中,如图1所示,在当前界面接收到用户的点击事件需要更新时,首先将该点击事件传动到对应的小程序,小程序调用一段业务代码,执行具体的逻辑计算出更新的界面所需要界面数据,并且将该界面数据传送至用户界面,进而,执行界面更新逻辑实现界面的更新。然而,上述的界面更新对应的界面更新逻辑的执行时,由于是单线程执行,需要一次执行完毕,当待处理的界面数据较大时,会导致当前界面出现长时间的卡顿,在此期间无法响应用户的操作。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的第一个目的在于提出一种用户界面响应方法,以实现在界面进行更新时也可以响应用户的操作指令,避免了在界面更新数据较大时导致的界面卡顿,提升了用户体验。
本发明的第二个目的在于提出一种用户界面响应装置。
本发明的第三个目的在于提出一种非临时性计算机可读存储介质。
本发明的第四个目的在于提出一种计算机设备。
为达上述目的,本发明第一方面实施例提出了一种用户界面响应方法,包括:获取界面更新指令,根据所述界面更新指令获取待更新界面的第一界面数据;构建所述第一界面数据和当前界面的第二界面数据的比较任务,其中,所述比较任务中包含至少一个暂停位置;在执行所述比较任务时,若执行至所述暂停位置则检测是否接收到用户针对所述当前界面的操作指令;若在当前暂停位置接收到所述操作指令,则控制所述比较任务在所述当前暂停位置暂停,直至控制所述当前界面响应所述操作指令后,从所述当前暂停位置继续执行所述比较任务。
本发明实施例的用户界面显示方法,获取界面更新指令,根据界面更新指令获取待更新界面的第一界面数据,构建第一界面数据和当前界面的第二界面数据的比较任务,其中,比较任务中包含至少一个暂停位置,进而,在执行比较任务时,若执行至暂停位置则检测是否接收到用户针对当前界面的操作指令,若在当前暂停位置接收到操作指令,则控制比较任务在当前暂停位置暂停,直至控制当前界面响应操作指令后,从当前暂停位置继续执行比较任务。由此,实现了在界面进行更新时也可以响应用户的操作指令,避免了在界面更新数据较大时导致的界面卡顿,提升了用户体验。
为达上述目的,本发明第二方面实施例提出了一种用户界面响应装置,包括:获取模块,用于获取界面更新指令,根据所述界面更新指令获取待更新界面的第一界面数据;构建模块,用于构建所述第一界面数据和当前界面的第二界面数据的比较任务,其中,所述比较任务中包含至少一个暂停位置;检测模块,在执行所述比较任务时,若执行至所述暂停位置则检测是否接收到用户针对所述当前界面的操作指令;处理模块,用于在当前暂停位置接收到所述操作指令时,控制所述比较任务在所述当前暂停位置暂停,直至控制所述当前界面响应所述操作指令后,从所述当前暂停位置继续执行所述比较任务。
本发明实施例的用户界面显示装置,获取界面更新指令,根据界面更新指令获取待更新界面的第一界面数据,构建第一界面数据和当前界面的第二界面数据的比较任务,其中,比较任务中包含至少一个暂停位置,进而,在执行比较任务时,若执行至暂停位置则检测是否接收到用户针对当前界面的操作指令,若在当前暂停位置接收到操作指令,则控制比较任务在当前暂停位置暂停,直至控制当前界面响应操作指令后,从当前暂停位置继续执行比较任务。由此,实现了在界面进行更新时也可以响应用户的操作指令,避免了在界面更新数据较大时导致的界面卡顿,提升了用户体验。
为达上述目的,本发明第三方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例描述的用户界面响应方法。
为了实现上述目的,本发明第四方面实施例提出了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述实施例描述的用户界面响应方法。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为现有技术的界面更新流程示意图;
图2-1是本发明一个实施例提供的界面更新流程示意图;
图2-2是本发明另一个实施例提供的界面更新场景示意图;
图3为本发明另一个实施例提供的一种用户界面响应方法的流程示意图;
图4是本发明另一个实施例提供的界面数据的树状结构示意图;
图5-1是本发明另一个实施例提供的比较任务执行场景示意图;
图5-2是本发明另一个实施例提供的比较任务执行场景示意图;
图6-1是本发明另一个实施例提供的第一数据树结构的树状结构示意图;
图6-2是本发明另一个实施例提供的第二数据树结构的树状结构示意图;
图7是本发明另一个实施例提供的用户界面响应装置的结构示意图;
图8是本发明另一个实施例提供的用户界面响应装置的结构示意图;
图9是本发明另一个实施例提供的用户界面响应装置的结构示意图;
图10是本发明另一个实施例提供的计算机可读存储介质的示意图;
图11为本发明另一个实施例提供的电子设备的框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的用户界面响应方法和装置。针对现有技术中界面更新时,界面更新逻辑必须一次执行完毕,待处理的界面上数据较大导致的界面卡顿的问题,本发明提出了一种可以将界面更新逻辑暂停的方法,在该方法中,通过暂停处理兼顾了对用户行为的响应和对界面的更新。
其中,在本发明的实施例中,如图2-1所示,为了避免待更新的界面和当前界面中重复的内容也需要重新渲染,本发明实施例中,为了提高界面更新效率,将待更新的界面的界面数据与当前界面的界面数据进行比较,仅仅将比较产生的不同的界面数据在当前界面的基础上更新,其中,根据图2-1所体现的更新逻辑和图2-2可知,界面更新逻辑是单线程执行的,当该界面更新时会阻塞用户界面的渲染,此时界面会出现卡顿的情况。
具体而言,图3为本发明实施例所提供的一种用户界面响应方法的流程示意图。如图3所示,该方法包括:
步骤101,获取界面更新指令,根据界面更新指令获取待更新界面的第一界面数据。
其中,界面更新指令可以理解为用户点击当前界面触发的,比如,当用户在购物小程序中输入新的搜索关键词后,该购物小程序由于需要提供与新的搜索词对应的界面,因而,获取到界面更新指令。
具体而言,在获取到页面更新指令后,根据界面更新指令获取待更新界面的第一界面数据,比如,对于购物小程序而言,获取新的搜索词对应的更新界面的界面数据,该第一界面数据可以理解为待更新界面的界面vdom描述。
步骤102,构建第一界面数据和当前界面的第二界面数据的比较任务,其中,比较任务中包含至少一个暂停位置。
步骤103,在执行比较任务时,若执行至暂停位置则检测是否接收到用户针对当前界面的操作指令。
其中,用户针对当前界面的操作指令可以理解为用户针对当前界面的用户行为,该用户行为不会是针对当前界面的操作,比如,上下滑动操作等,考虑到在实际执行过程中,接收到用户针对当前界面的操作指令可能在暂停位置达到之前接收到,此时,可以将发生在暂停位置达到之前的用户行为缓存,以便于在暂停位置达到时执行。
正如图2-2所示的,为了提高界面更新效率,将当前界面的第二界面数据和待更新界面的第一界面数据进行比较,构建二者的比较任务,其中,该比较任务的构建可以理解为将二者的比较量化为执行二者比较的具体数据单元等。
需要说明的是,在不同的应用场景下,根据构建第一界面数据和当前界面的第二界面数据的比较任务的方式不同,作为一种可能的实现方式,考虑到界面渲染实际上是对应于dom树的渲染(dom:是显示界面的浏览器核心组成部分),dom的结构像一棵树一样。使用vdom去描述dom的时候,实际上vdom也是一棵树,因而,可以将第一界面数据和当前界面的第二界面数据量化为具体的树结构,基于树结构创建比较任务。
具体而言,在本实施例中,如图4所示,将第一界面数据和第二界面数据以vdom树状结构的形式表现,从而,对应的比较任务对应两个树结构的数据单元的具体比较。
应当理解的是,在本发明的实施例中,为了实现在执行界面更新逻辑时也可以响应用户对界面的用户行为,比如,在购物小程序根据新的搜索词执行界面更新逻辑时,用户对当前界面的用户行为-上下滑动当前界面也是可以响应的,本发明在比较任务中存在至少一个暂停位置,以便于根据该暂停位置暂停执行界面更新逻辑。
需要说明的是,在不同的应用场景下,暂停位置的设置方式不同,示例如下:
第一种示例:
在本示例中,暂停位置以相对固定的方式预先设置,如图5-1所示,在本示例中,根据预设的拆分策略将比较任务拆分为多个子任务,在多个子任务中的每个子任务的预设位置插入暂停标识,比如,在每个子任务的最后插入暂停标识,或者在每个子任务的后面插入单独的暂停数据段,当然,根据应用场景的需要,也可以每相隔一定个数的子任务后面插入暂停标识,每两个暂停标识之间的子任务的个数可以相同也可以不同。其中,在本实施例中的暂停标识可以理解为暂停标志符或者预先标定的暂停代码等。
其中,预设的拆分策略与比较任务的构建逻辑有关,保证每个子任务可以完成独立的比较任务的数据单元,即可以实现具体的拆分执行,继续以数据树结构对界面数据的表示为例进行举例,详细说明如何进行子任务的拆分:
具体而言,获取第一界面数据的第一数据数结构,和第二界面数据的第二数据树结构,遍历第一数据树结构获取组成第一数据树结构的多条第一枝路径,并遍历第二数据树结构获取组成第二数据树结构的多条第二枝路径,比如,可以根据界面数据对应的树结构的vdom身份属性进行数据数目结构的遍历,获取组成对应数结构的枝路径,根据多条第一枝路径和多条第二枝路径创建多个子任务,每个子任务中包含了完整的第一枝路径和完整的第二枝路径的比较,因而,可以实现比较任务的暂停。
举例而言,如图6-1所示,当第一数据树结构为8个vdom数据单元组成,如图6-2所示,第二数据树结构为6个vdom数据单元组成时(图中标号一样的vdom数据单元代表vdom数据单元一致),基于vdom数据单元的属性(vdom数据单元的属性包括父节点、子节点、兄弟节点等)遍历构建获取的第一枝路径包括:1-2-3,1-2-4,1-5-6-7,1-5-6-8,遍历构建获取的第二枝路径包括:1-2-3,1-2-9,1-5-6,则构建的多个子任务包括:1-2-3和1-2-3,1-2-4和1-2-9,1-5-6-7与1-5-6和1-5-6-8。
又举例而言,如图6-1所示,当第一数据树结构为8个vdom数据单元组成,如图6-2所示,第二数据树结构为6个vdom数据单元组成时(图中标号一样的vdom数据单元代表vdom数据单元一致),根据vdom数据单元的属性构建第一数据树结构的第一数据列表和第二数据树结构的第二数据列表,其中在数据列表中梳理了每个数据单元的节点属性和节点内容,如下表1和表2所示的分别为第一数据列表和第二数据列表,进而,基于相同父节点的每一行列表内容和每一行列表内容的比较作为一个子任务。比如,将表1中的第一行和表2中的第一行列表数据作为一个比较任务,在比较时按照节点等级进行逐级比较。
表1
表2
其中,子任务的划分可以为多种多样,本示例中仅仅列出了其中两种可能的实现方式,为了描述的便利性,在此不对子任务划分的方式一一列举。
第二种示例:
在本示例中,暂停位置以相对变化的方式预先设置,也可以理解,在本示例中,暂停位置基于一定的条件动态判断,当执行时的条件满足该暂停位置的条件时,则将该执行位置判断为暂停位置。
具体而言,在本示例中,为了进一步提高界面更新效率,将比较任务放在每一帧界面渲染剩余时间内,可以理解的是,系统为每一帧界面分配渲染周期,比如基于1秒60帧即每一帧的渲染周期为16.66ms左右的周期进行渲染,然而,这16.66ms并不一定全部被界面渲染操作占满,因而,我们可基于这些界面渲染周期中剩余的空闲时间来执行比较任务,其中,需要强调的是,本实施例中所指的界面渲染是后台为了待更新界面的显示所执行的界面渲染操作,是发生于后台的操作,并不依赖于当前比较任务的执行完毕,由此,显然在本实施例中,满足暂停位置的条件是当前空闲时间为0。即确定与第一界面数据对应的当前界面帧渲染完成后的渲染剩余时长,实时监测渲染剩余时长,当渲染剩余时长大于零时,执行比较任务,当渲染剩余时长等于零时,暂停执行比较任务并检测是否接收到用户针对当前界面的操作指令。
举例而言,在本示例中使用方法函数requestIdleCallback来实现该比较任务,这个方法函数中接受一个参数“taskarray”,该参数表示了要执行的比较任务中的子任务队列对应的函数,该函数被注入对象“deadline”,“deadline”对应于一个方法函数“timeRemaining”,调用“timeRemaining”可以获取当前渲染剩余时长。
在具体操作时,如图5-2所示,在requestIdleCallback中执行taskarray中的比较任务,监测任务被注入的当前界面帧的渲染剩余时长,当渲染剩余时长大于0时,在requestIdleCallback中继续执行taskarray中的比较任务,当渲染剩余时长等于0时,表示达到了暂停条件将当前位置确定为暂停位置,暂停执行比较任务,检测是否接收到用户针对当前界面的操作指令,若有则执行用户行为,并返回requestIdleCallback在下一个界面帧的渲染剩余时间呃内继续执行taskarray中的比较任务,若没有则直接返回requestIdleCallback在下一个界面帧的渲染剩余时间内继续执行taskarray中的比较任务。
步骤104,若在当前暂停位置接收到操作指令,则控制比较任务在当前暂停位置暂停,直至控制当前界面响应操作指令后,从当前暂停位置继续执行比较任务。
具体地,若在当前暂停位置接收到操作指令,则控制比较任务在当前暂停位置暂停,直至控制当前界面响应操作指令后,从当前暂停位置继续执行比较任务,由此,在待更新界面显示给用户之前,仍然可以对用户针对当前界面的操作,避免了界面卡顿的发生。
进一步地,当比较任务执行完毕后,确定第一界面数据与第二界面数据的界面更新数据,根据界面更新数据将当前界面更新为待更新界面。由此,界面更新一步到位,在前端展示时改善了界面卡顿的问题
综上,本发明实施例的用户界面显示方法,获取界面更新指令,根据界面更新指令获取待更新界面的第一界面数据,构建第一界面数据和当前界面的第二界面数据的比较任务,其中,比较任务中包含至少一个暂停位置,进而,在执行比较任务时,若执行至暂停位置则检测是否接收到用户针对当前界面的操作指令,若在当前暂停位置接收到操作指令,则控制比较任务在当前暂停位置暂停,直至控制当前界面响应操作指令后,从当前暂停位置继续执行比较任务。由此,实现了在界面进行更新时也可以响应用户的操作指令,避免了在界面更新数据较大时导致的界面卡顿,提升了用户体验。
为了实现上述实施例,本发明还提出了一种用户界面响应装置。
图7是根据本发明一个实施例的用户界面响应装置的结构示意图,如图7所示,该用户界面响应装置包括:获取模块100、构建模块200、检测模块300和处理模块400,其中,
获取模块100,用于获取界面更新指令,根据界面更新指令获取待更新界面的第一界面数据。
构建模块200,用于构建第一界面数据和当前界面的第二界面数据的比较任务,其中,比较任务中包含至少一个暂停位置。
检测模块300,在执行比较任务时,若执行至暂停位置则检测是否接收到用户针对当前界面的操作指令。
处理模块400,用于在当前暂停位置接收到操作指令时,控制比较任务在当前暂停位置暂停,直至控制当前界面响应操作指令后,从当前暂停位置继续执行比较任务。
在本发明的一个实施例中,如图8所示,在如图7所示的基础上,构建模块200包括拆分单元210和插入单元220,其中,
拆分单元210,用于根据预设的拆分策略将比较任务拆分为多个子任务。
插入单元220,用于在多个子任务中的每个子任务的预设位置插入暂停标识。
在本发明的一个实施例中,如图9所示,在如图7所示的基础上,该装置还包括确定模块500和监测模块600,其中,
确定模块500,用于确定与第一界面数据对应的当前界面帧渲染完成后的渲染剩余时长。
监测模块600,用于实时监测渲染剩余时长。
处理模块400还用于当渲染剩余时长大于零时,执行比较任务,以及,当渲染剩余时长等于零时,暂停执行比较任务并检测是否接收到用户针对当前界面的操作指令。需要说明的是,前述对用户界面响应方法实施例的解释说明也适用于该实施例的用户界面响应装置,此处不再赘述。
综上,本发明实施例的用户界面显示装置,获取界面更新指令,根据界面更新指令获取待更新界面的第一界面数据,构建第一界面数据和当前界面的第二界面数据的比较任务,其中,比较任务中包含至少一个暂停位置,进而,在执行比较任务时,若执行至暂停位置则检测是否接收到用户针对当前界面的操作指令,若在当前暂停位置接收到操作指令,则控制比较任务在当前暂停位置暂停,直至控制当前界面响应操作指令后,从当前暂停位置继续执行比较任务。由此,实现了在界面进行更新时也可以响应用户的操作指令,避免了在界面更新数据较大时导致的界面卡顿,提升了用户体验。
为了实现上述实施例,本发明还提出一种计算机可读存储介质,当所述存储介质中的指令由处理器被执行时,实现如前述实施例所描述的用户界面响应方法。图10是图示根据本发明一个实施例的计算机可读存储介质的示意图。如图10所示,根据本发明实施例的计算机可读存储介质300,其上存储有非暂时性计算机可读指令301。当该非暂时性计算机可读指令301由处理器运行时,执行前述的本发明各实施例的根据用户肢体运动的视频渲染方法的全部或部分步骤。
为了实现上述实施例,本公开还提出了一种电子设备,下面参考图11,其示出了适于用来实现本公开实施例的电子设备1100的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图11示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图11所示,电子设备1100可以包括处理装置(例如中央处理器、图形处理器等)1101,其可以根据存储在只读存储器(ROM)1102中的程序或者从存储装置11111108加载到随机访问存储器(RAM)1103中的程序而执行各种适当的动作和处理。在RAM 1103中,还存储有电子设备1100操作所需的各种程序和数据。处理装置1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
通常,以下装置可以连接至I/O接口1105:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1106;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置1107;包括例如磁带、硬盘等的存储装置1108;以及通信装置1109。通信装置1109可以允许电子设备1100与其他设备进行无线或有线通信以交换数据。虽然图11示出了具有各种装置的电子设备1100,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置1109从网络上被下载和安装,或者从存储装置11111108被安装,或者从ROM 1102被安装。在该计算机程序被处理装置1101执行时,执行本公开实施例的方法中限定的上述功能。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (8)
1.一种用户界面响应方法,其特征在于,包括以下步骤:
获取界面更新指令,根据所述界面更新指令获取待更新界面的第一界面数据;
构建所述第一界面数据和当前界面的第二界面数据的比较任务,其中,所述比较任务中包含至少一个暂停位置;
在执行所述比较任务时,若执行至所述暂停位置则检测是否接收到用户针对所述当前界面的操作指令;
若在当前暂停位置接收到所述操作指令,则控制所述比较任务在所述当前暂停位置暂停,直至控制所述当前界面响应所述操作指令后,从所述当前暂停位置继续执行所述比较任务,其中,所述构建所述第一界面数据和当前界面的第二界面数据的比较任务,包括:
根据预设的拆分策略将所述比较任务拆分为多个子任务;
在所述多个子任务中的每个子任务的预设位置插入暂停标识。
2.如权利要求1所述的方法,其特征在于,所述根据预设的拆分策略将所述比较任务拆分为多个子任务,包括:
获取所述第一界面数据的第一数据树结构和所述第二界面数据的第二数据树结构;
遍历所述第一数据树结构获取组成所述第一数据树结构的多条第一枝路径,并遍历所述第二数据树结构获取组成所述第二数据树结构的多条第二枝路径;
根据所述多条第一枝路径和所述多条第二枝路径创建所述多个子任务。
3.如权利要求1所述的方法,其特征在于,所述在执行所述比较任务时,若执行至所述暂停位置则检测是否接收到用户针对所述当前界面的操作指令,包括:
确定与所述第一界面数据对应的当前界面帧渲染完成后的渲染剩余时长;
实时监测所述渲染剩余时长,当所述渲染剩余时长大于零时,执行所述比较任务;
当所述渲染剩余时长等于零时,暂停执行所述比较任务并检测是否接收到用户针对所述当前界面的操作指令。
4.如权利要求1所述的方法,其特征在于,还包括:
当所述比较任务执行完毕后,确定所述第一界面数据与所述第二界面数据的界面更新数据;
根据所述界面更新数据将所述当前界面更新为所述待更新界面。
5.一种用户界面响应装置,其特征在于,包括:
获取模块,用于获取界面更新指令,根据所述界面更新指令获取待更新界面的第一界面数据;
构建模块,用于构建所述第一界面数据和当前界面的第二界面数据的比较任务,其中,所述比较任务中包含至少一个暂停位置;
检测模块,在执行所述比较任务时,若执行至所述暂停位置则检测是否接收到用户针对所述当前界面的操作指令;
处理模块,用于在当前暂停位置接收到所述操作指令时,控制所述比较任务在所述当前暂停位置暂停,直至控制所述当前界面响应所述操作指令后,从所述当前暂停位置继续执行所述比较任务,其中,所述构建模块,包括:
拆分单元,用于根据预设的拆分策略将所述比较任务拆分为多个子任务;
插入单元,用于在所述多个子任务中的每个子任务的预设位置插入暂停标识。
6.如权利要求5所述的装置,其特征在于,还包括:
确定模块,用于确定与所述第一界面数据对应的当前界面帧渲染完成后的渲染剩余时长;
监测模块,用于实时监测所述渲染剩余时长;
所述处理模块,还用于当所述渲染剩余时长大于零时,执行所述比较任务;
所述处理模块,还用于当所述渲染剩余时长等于零时,暂停执行所述比较任务并检测是否接收到用户针对所述当前界面的操作指令。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4任一项所述的用户界面响应方法。
8.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-4中任一所述的用户界面响应方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910271838.7A CN110083417B (zh) | 2019-04-04 | 2019-04-04 | 用户界面响应方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910271838.7A CN110083417B (zh) | 2019-04-04 | 2019-04-04 | 用户界面响应方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110083417A CN110083417A (zh) | 2019-08-02 |
CN110083417B true CN110083417B (zh) | 2022-05-06 |
Family
ID=67414316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910271838.7A Active CN110083417B (zh) | 2019-04-04 | 2019-04-04 | 用户界面响应方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110083417B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111198702A (zh) * | 2019-12-23 | 2020-05-26 | 宁波港信息通信有限公司 | 界面刷新方法、装置、计算机设备和存储介质 |
CN111597028B (zh) * | 2020-05-19 | 2023-08-25 | 北京百度网讯科技有限公司 | 用于任务调度的方法和装置 |
CN114489892B (zh) * | 2022-01-12 | 2024-09-17 | 深圳Tcl新技术有限公司 | 数据处理方法、装置、计算机可读存储介质和计算机设备 |
CN116661939A (zh) * | 2023-07-31 | 2023-08-29 | 北京趋动智能科技有限公司 | 页面渲染方法、装置、存储介质及电子设备 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110191677A1 (en) * | 2010-01-29 | 2011-08-04 | Robert Paul Morris | Methods, systems, and computer program products for controlling play of media streams |
US9911321B2 (en) * | 2015-03-18 | 2018-03-06 | Logitech Europe S.A. | Simplified adaptable controller |
CN104834443A (zh) * | 2015-04-08 | 2015-08-12 | 深圳市金立通信设备有限公司 | 一种界面管理方法 |
CN106301865B (zh) * | 2015-06-11 | 2020-08-04 | 阿里巴巴集团控股有限公司 | 应用于服务提供设备的数据处理方法和设备 |
CN106648398B (zh) * | 2015-11-03 | 2020-08-14 | 重庆邮电大学 | 一种显示控制方法及装置 |
CN106686133B (zh) * | 2017-02-09 | 2020-07-14 | 北京奇虎科技有限公司 | 一种跨平台交互方法和装置 |
CN108260018B (zh) * | 2017-02-13 | 2020-05-22 | 广州市动景计算机科技有限公司 | 网页视频的全屏设置方法、设备及网页视频设置移动设备 |
CN111694486B (zh) * | 2017-05-16 | 2023-08-22 | 苹果公司 | 用于在用户界面之间导航的设备、方法和图形用户界面 |
CN108279932B (zh) * | 2018-01-22 | 2021-05-25 | 北京奇艺世纪科技有限公司 | 一种移动终端动态配置用户界面方法和装置 |
CN109032600A (zh) * | 2018-07-24 | 2018-12-18 | 东软集团股份有限公司 | 应用界面更新方法、装置、存储介质及电子设备 |
CN109343903A (zh) * | 2018-09-26 | 2019-02-15 | 深圳壹账通智能科技有限公司 | 一种更新用户界面的方法及终端 |
-
2019
- 2019-04-04 CN CN201910271838.7A patent/CN110083417B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110083417A (zh) | 2019-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110083417B (zh) | 用户界面响应方法和装置 | |
CN107102788B (zh) | 应用程序通知 | |
US9292177B2 (en) | Progress bar with feature availability indicator | |
CN110825456B (zh) | 加载时间计算方法、装置、计算机设备及存储介质 | |
WO2013063168A1 (en) | Creating and maintaining images of browsed documents | |
CN109783158A (zh) | 应用启动任务处理方法及装置 | |
CN110619096B (zh) | 用于同步数据的方法和装置 | |
CN113934958B (zh) | 页面加载方法、装置、电子设备和计算机可读介质 | |
CN110401877B (zh) | 视频播放的控制方法、装置、电子设备、及存储介质 | |
US20240040185A1 (en) | Task processing method, device, and storage medium | |
CN110134905B (zh) | 一种页面更新显示方法、装置、设备及存储介质 | |
WO2017206893A1 (zh) | 界面刷新同步方法、装置、终端及存储介质 | |
KR102225476B1 (ko) | 임베디드 웹 콘텐츠 실행의 애플리케이션 제어 | |
CN111367783B (zh) | 应用程序的测试方法、装置及电子设备 | |
CN115421931B (zh) | 业务线程控制方法、装置、电子设备及可读存储介质 | |
CN109933380B (zh) | 在线表格分块加载方法及装置 | |
CN108415732A (zh) | 屏保显示控制方法和微控制单元mcu | |
CN111767062A (zh) | 应用配置数据的更新方法、装置、设备及存储介质 | |
US10165245B2 (en) | Pre-fetching video content | |
CN107015874B (zh) | 数据传输控制方法、装置及终端 | |
CN110221892A (zh) | 一种滚动窗口信息的方法、装置、介质和电子设备 | |
CN106933449B (zh) | 图标处理方法和装置 | |
CN110795194B (zh) | 桌面显示控制的方法、装置、终端及存储介质 | |
CN112882857B (zh) | 性能问题定位方法、装置、电子设备和存储介质 | |
CN110377362B (zh) | 清理应用程序的方法、装置、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231027 Address after: Rooms 503-16, 5th Floor, Building 2, No.1 and No.3, Qinglong Hutong A, Dongcheng District, Beijing, 100007 Patentee after: Beijing Dongchezu Technology Co.,Ltd. Address before: 300000 Tianjin Binhai High-tech Zone Binhai Science Park, No. 39, No. 6 High-tech Road, 9-3-401 Patentee before: TIANJIN BYTEDANCE TECHNOLOGY Co.,Ltd. |