一种进度显示方法及装置与流程

文档序号:11216156阅读:372来源:国知局
一种进度显示方法及装置与流程

本发明的实施方式涉及计算机软件领域,更具体地,本发明的实施方式涉及一种进度显示方法及装置。



背景技术:

本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。

随着互联网技术的快速发展,应用的种类也越来越丰富,在操作应用的过程中,操作完全被响应是需要时间的,例如,打开某个app(application,应用程序),从用户点击该app图标到完全呈现该app的首页一般需要几秒钟的时间,或者在打开app的某个功能时,打开过程可能也需要几秒钟的时间;亦或者下载文件、或者加载多媒体资源时,下载或者加载过程需要几分钟时间。

现有技术中,对于任务执行过程中、能够获得任务真实进度的情形,可以将真实进度进行显示、用于提示用户任务执行进度,但是某些场合真实进度无法获取。对于真实进度无法获取的情形、以及某些可以获得真实进度的情形,现有技术可以选择展示虚拟进度,用于减小用户等待时的焦虑感;例如主要采用如下几种方法在等待操作完全被响应的过程中显示进度:

一种为,采用“无限循环”的控件,无限加载进度,如图1a所示,另一种为,采用“无限循环滚动”的控件,无限滚动进度圈,如图1b所示,但是上述两种方法,均没有显示任务执行的进度,只是展示“循环往复”的动画,容易让用户产生一种“应用程序被卡住了”的错觉,如果用户等待的时间较长,很容易失去信心,从而可能关闭当前任务,影响任务完成的成功率,进一步地,用户还可能卸载该应用程序。



技术实现要素:

上述显示进度的方法会让用户产生一种“应用程序被卡住了”的错觉,从而用户可能会关闭当前任务,影响任务完成的成功率,进一步地,用户还可能卸载该应用程序,这是非常令人烦恼的过程。

为此,非常需要一种改进的进度显示方法,以使解决上述缺陷。

在本发明实施方式的第一方面中,提供了一种进度显示方法,包括:

当第一任务执行时,根据第一函数显示所述第一任务的执行进度的第一阶段;

在所述执行进度达到第一阈值时,根据第二函数显示所述执行进度的第二阶段。

在一个实施方式中,根据本发明的上述实施方式所述的方法,所述执行进度达到所述第一阈值之前第一预设时长的时间段内的执行进度的变化速率,小于所述执行进度达到所述第一阈值之后第二预设时长的时间段内的执行进度的变化速率。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,所述方法还包括:

当所述执行进度达到第二阈值时,将显示的进度数值放大显示。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,所述显示的进度数值保留m位小数,所述m为大于0的整数。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,所述方法还包括:

当所述执行进度达到第三阈值时,显示第一类语句,所述第三阈值大于或者等于所述第二阈值。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,所述第二函数的函数值随着时间的无限延长无限接近于100%。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,所述第二函数与所述第一函数为同一函数。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,所述第二函数为指数函数、幂函数和对数函数中的至少一种。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,所述执行进度为虚拟执行进度。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,当所述虚拟执行进度达到所述第一阈值时,根据历史统计数据或者预设预测模型的预测数据,预设比例的用户的实际执行进度能够达到所述第一阈值。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,所述方法还包括:

接收到用于表示所述第一任务执行已经完成的指令时,将所述虚拟执行进度调整至100%。

在一些实施方式中,根据本发明的上述任一实施方式所述的方法,所述虚拟执行进度从0变化至第四阈值时所占用的时间小于或者等于第三预设时长。

在本发明实施方式的第二方面中,提供了一种进度显示装置,包括:

执行单元,用于执行第一任务;

显示单元,用于当所述执行单元执行所述第一任务时,根据第一函数显示所述第一任务的执行进度的第一阶段;

所述显示单元还用于,在所述执行进度达到第一阈值时,根据第二函数显示所述执行进度的第二阶段。

在一个实施方式中,根据本发明的上述实施方式所述的装置,所述执行进度达到所述第一阈值之前第一预设时长的时间段内的执行进度的变化速率,小于所述执行进度达到所述第一阈值之后第二预设时长的时间段内的执行进度的变化速率。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,所述装置还包括放大单元,用于当所述执行进度达到第二阈值时,将显示的进度数值放大。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,所述显示的进度数值保留m位小数,所述m为大于0的整数。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,所述显示单元还用于,当所述执行进度达到第三阈值时,显示第一类语句,所述第三阈值大于或者等于所述第二阈值。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,所述第二函数的函数值随着时间的无限延长无限接近于100%。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,所述第二函数与所述第一函数为同一函数。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,所述第二函数为指数函数、幂函数和对数函数中的至少一种。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,所述执行进度为虚拟执行进度。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,当所述虚拟执行进度达到所述第一阈值时,根据历史统计数据或者预设预测模型的预测数据,预设比例的用户的实际执行进度能够达到所述第一阈值。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,所述装置还包括接收单元和调整单元,其中:

所述接收单元,用于接收用于表示所述第一任务执行已经完成的指令;

所述调整单元,用于在所述接收单元接收到用于表示所述第一任务执行已经完成的指令时,将所述虚拟执行进度调整至100%。

在一些实施方式中,根据本发明的上述任一实施方式所述的装置,所述虚拟执行进度从0变化至第四阈值时所占用的时间小于或者等于第三预设时长。

在本发明实施方式的第三方面中,提供了一种进度显示装置,包括:

一个或者多个处理器;

存储器;

存储在所述存储器中的程序,当被所述一个或者多个处理器执行时,所述程序使所述处理器执行如上所述的方法。

在本发明实施方式的第四方面中,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序,当所述程序被处理器执行时,使得所述处理器执行如上所述的方法

本发明实施例中,提出一种进度显示方法,包括:当第一任务执行时,根据第一函数显示所述第一任务的执行进度的第一阶段;在所述执行进度达到第一阈值时,根据第二函数显示所述执行进度的第二阶段;在该方案中,首先呈现的是执行进度的第一阶段,当执行进度达到第一阈值的时候,进一步还要呈现执行进度的第二阶段,也就是说,不仅会呈现执行进度,呈现给用户的执行进度还是变化的,会从第一阶段变化至第二阶段,不会让用户产生一种“应用程序卡住了”的错觉,从而用户可以产生继续等待的信心,直至任务执行完毕,避免用户在任务执行完毕之前就关掉或者将应用卸载的缺陷。

附图说明

通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:

图1a示意性地示出了现有技术中进度显示的一种示意图;

图1b示意性地示出了现有技术中进度显示的另一种示意图;

图2a示意性地示出了根据本发明实施方式的进度显示的流程图;

图2b示意性地示出了根据本发明实施方式的第一曲线和第二曲线的示意图;

图2c示意性地示出了根据本发明实施方式的放大进度数值的示意图;

图2d示意性地示出了根据本发明实施方式的第一类语句的示意图;

图2e示意性地示出了根据本发明实施方式的执行进度的示意图;

图2f示意性地示出了根据本发明实施方式的渐近曲线的示意图;

图3示意性地示出了根据本发明实施方式的进度显示装置的另一种示意图;

图4示意性地示出了根据本发明实施方式的进度显示装置的另一种示意图;

在附图中,相同或对应的标号表示相同或对应的部分。

具体实施方式

下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。

本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。

在本文中,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。

下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。

发明概述

本发明人发现,为了避免让用户产生一种“应用程序被卡住了”的错觉,在执行任务的过程中,可以将执行进度分成两个阶段显示,执行任务开始的时候呈现第一阶段,在执行进度达到第一阈值的时候呈现第二阶段,其中,第一阶段与第一函数相关,第二阶段与第二函数相关,两个阶段所依据的函数不同,因此,呈现出来的第一阶段和第二阶段也不相同,这样,用户能够感知到任务的执行进度的变化,不会让用户产生一种“应用程序被卡住了”的错觉,从而用户可以产生继续等待的信心,直至任务执行完毕,避免用户在任务执行完毕之前就关掉或者将应用卸载的缺陷。

在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。

应用场景总览

以用户指令加载多媒体资源为例进行说明。用户点击播放多媒体资源的按钮时,开始根据指数函数显示第一阶段,当该任务的执行进度达到90%时,再根据幂函数显示第二阶段,其中,该幂函数无线接近于100%,幂函数和指数函数不同。由于第一阶段是根据指数函数显示的,第二阶段是根据幂函数显示的,因此,显示出来的第一阶段和第二阶段是不同的,用户可以感受到执行进度的变化,不会产生一种“应用程序被卡住了”的错觉,从而用户可以产生继续等待的信心,直至多媒体资源加载完成,避免用户在任务完成之前就关掉该任务。

示例性方法

下面结合上述应用场景,参考图2来描述根据本发明示例性实施方式的用于进度显示的方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。

参阅图2所示,本发明实施例提出一种进度显示的方法20,该方法包括如下步骤:

步骤200:当第一任务执行时,根据第一函数显示所述第一任务的执行进度的第一阶段;

步骤210:在所述执行进度达到第一阈值时,根据第二函数显示所述执行进度的第二阶段。

本发明实施例中,第一任务包括应用程序启动、文件下载、数据加载中的至少一种,例如,易信的启动,网易云音乐中歌曲的下载。当然,还可以有其他形式,在此不做具体限定。

为了能让用户明显感觉到执行进度的变化,可选地,所述执行进度达到所述第一阈值之前第一预设时长的时间段内的执行进度的变化速率,小于所述执行进度达到所述第一阈值之后第二预设时长的时间段内的执行进度的变化速率。

如图2b所示,t之前的曲线的变化比较平缓,t之后的曲线的变化较t之前的曲线的变化陡峭,用户能够明确感受到t之前的第一预设时长的时间段内的执行进度的变化速率,小于t之后的第一预设时长的时间段内的执行进度的变化速率,这样,用户可以确定任务在进行过程中,没被“卡住”。

当执行进度达到一定程度时,执行进度可能会变得非常缓慢,例如,执行进度在达到50%之前,执行进度可能以每秒10%以上的速度变化,在达到50%以上未达到90%的时候,执行进度可能以每秒3%的速度变化,当执行进度达到90%的时候,执行进度可能以每秒1%以下的速度变化,速度较慢,此时,为了让用户感受到执行进度达到90%以上时执行进度的变化,进一步地,当所述执行进度达到第二阈值时,将显示的进度数值放大显示。例如,当执行进度达到90%时,将显示的进度数值放大1倍显示,如图2c所示。

当执行进度距离100%越来越近时,执行进度的前进速度将会变得很慢,导致用户无法感知执行进度仍然在前进,本发明实施例中还可以显示进度数值,用户可以通过进度数值判断执行进度仍然在运行当中,为了能更进一步地让用户感受到执行进度的变化,所述显示的进度数值保留m位小数,所述m为大于0的整数,如图2c所示,显示的是92.9%,这样,用户可以感受到两个整数之间的执行进度的变化,如92%-93%过程的变化,避免当执行进度处于92%-93%这个过程之间时,用户误认为应用程序被“卡住”了。

为了让用户感受到执行进度的变化,还可以显示跟不同的进度数值相匹配的鼓励性语句,如,执行进度在90%-92%的时候显示鼓励性语句“请耐心等待”、执行进度在92%-94%的时候显示鼓励性语句“最后冲刺”,如图2d所示。因此,本发明实施例中,当所述执行进度达到第三阈值时,显示第一类语句,所述第三阈值大于或者等于所述第二阈值。其中,可选地,第一类语句为鼓励性语句。

前面描述的是当所述执行进度达到第二阈值时,将显示的进度数值放大显示,为了能更进一步地让用户感受到执行进度的变化,在前面放大的基础上还可以再进一步放大,例如,当执行进度达到90%的时候,进度数值放大1倍,当执行进度达到95%的时候,将进度数值放大1.5倍或者2倍。此时,也可以将进度数值保留的小数位数增加,例如保留n位小数,所述n为大于m的整数。更进一步地,也可以显示让用户了解到执行进度马上要要达到100%的语句,例如“仅剩一步之遥”,如图2e所示。

本发明实施例中,可选地,执行进度为虚拟执行进度,也就是说,显示的进度数值并不是进度数值实际的数值,如执行进度为60%,但是虚拟执行进度为61%。

在这种情况下,为了避免显示的进度数值已经是100%,但是实际上并没有加载完成,让用户感知到显示的进度数值并不是实际的进度数值的缺陷,本发明实施例中,可选地,所述第二函数的函数值随着时间的无限延长无限接近于100%,例如,第二函数为渐近曲线,如图2e所示,这样,由于根据第二曲线显示的第二阶段永远不会达到100%,因此,不会出现显示的进度数值已经是100%,但是实际上并没有加载完成的情况。

本发明实施例中,可选地,所述第二函数为指数函数、幂函数和对数函数中的至少一种,例如,f(x)=1–ax,其中a为0-1的常数(不含0和1)。但是,无论第二函数是上述哪种函数,第二函数需要具有“函数值无限逼近一根直线”的特性。

本发明实施例中,可选地,所述第二函数与所述第一函数为同一函数,在这种情况下,步骤210中的第一阈值可以为任务完成之前执行进度的任意一数值,只要处于0%-100%(包括0%、100%)这个区间范围即可,不需要再具体限定。例如,可以为10%、20%、30%,或者也可以为70%、90%等。

本发明实施例中,为了避免显示的执行进度与实际的执行进度严重不符的缺陷,当显示的执行进度达到第一阈值时,需要保证一定比例的用户的实际的执行进度已经达到第一阈值,因此,本发明实施例中,当所述虚拟执行进度达到所述第一阈值时,根据历史统计数据或者预设预测模型的预测数据,预设比例的用户的实际执行进度能够达到所述第一阈值。例如,当所述虚拟执行进度达到70%时,80%的用户的实际执行进度能够达到70%。

本发明实施例中,当第二函数是渐近曲线时,由于根据第二曲线显示的第二阶段永远不会达到100%,因此,会出现任务的实际执行进度已经完成,但是显示的执行进度还未完成,进而用户能够感知到显示的执行进度是虚拟的执行进度,为了避免上述情况发生,进一步地,所述方法还包括:

接收到用于表示所述第一任务执行已经完成的指令时,将所述虚拟执行进度调整至100%。也就是说,当任务的实际进度完成时,会发出一个指令,设备会根据接收到的指令来将显示的执行进度调整至100%。

由于虚拟的执行进度是根据用户的设置来生成的,不是实际的执行进度,为了避免根据虚拟的执行进度和实际的执行进度严重不符,本发明实施例中,可选地,所述虚拟执行进度从0变化至第四阈值时可以设置所占用的时间小于或者等于第三预设时长。其中,第三预设时长可以为60s,第四阈值可以为90%。

示例性装置

在介绍了本发明示例性实施方式的方法之后,接下来,对本发明示例性实施方式的、用于进度显示的装置,该装置包括:

执行单元,用于执行第一任务;

显示单元,用于当所述执行单元执行所述第一任务时,根据第一函数显示所述第一任务的执行进度的第一阶段;

所述显示单元还用于,在所述执行进度达到第一阈值时,根据第二函数显示所述执行进度的第二阶段。

本发明实施例中,可选地,所述执行进度达到所述第一阈值之前第一预设时长的时间段内的执行进度的变化速率,小于所述执行进度达到所述第一阈值之后第二预设时长的时间段内的执行进度的变化速率。

本发明实施例中,进一步地,所述装置还包括放大单元,用于当所述执行进度达到第二阈值时,将显示的进度数值放大。

本发明实施例中,可选地,所述显示的进度数值保留m位小数,所述m为大于0的整数。

本发明实施例中,进一步地,所述显示单元还用于,当所述执行进度达到第三阈值时,显示第一类语句,所述第三阈值大于或者等于所述第二阈值。

本发明实施例中,可选地,所述第二函数的函数值随着时间的无限延长无限接近于100%。

本发明实施例中,可选地,所述第二函数与所述第一函数为同一函数。

本发明实施例中,可选地,所述第二函数为指数函数、幂函数和对数函数中的至少一种。

本发明实施例中,可选地,所述执行进度为虚拟执行进度。

本发明实施例中,可选地,当所述虚拟执行进度达到所述第一阈值时,根据历史统计数据或者预设预测模型的预测数据,预设比例的用户的实际执行进度能够达到所述第一阈值。

本发明实施例中,进一步地,所述装置还包括接收单元和调整单元,其中:

所述接收单元,用于接收用于表示所述第一任务执行已经完成的指令;

所述调整单元,用于在所述接收单元接收到用于表示所述第一任务执行已经完成的指令时,将所述虚拟执行进度调整至100%。

本发明实施例中,可选地,所述虚拟执行进度从0变化至第四阈值时所占用的时间小于或者等于第三预设时长。

示例性设备

在介绍了本发明示例性实施方式的方法和装置之后,接下来,介绍根据本发明的另一示例性实施方式的用于进度显示的装置。

所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。

在一些可能的实施方式中,本发明的装置可以至少包括一个或多个处理器、以及至少一个存储器。其中,所述存储器存储有程序,当所述程序被所述处理器执行时,使得所述处理器执行本说明书中描述各种步骤。

下面参照图3来描述根据本发明的这种实施方式的用于进度显示的装置。图3显示的装置40仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图3所示,装置40以通用计算设备的形式表现,包括但不限于:至少一个处理器410、至少一个存储器420、连接不同系统组件的总线460。

总线460表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。

存储器420可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)421和/或高速缓存存储器422,还可以进一步包括只读存储器(rom)423。

存储器420还可以包括程序模块424,这样的程序模块424包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

装置40还可以与一个或多个外部设备10(例如键盘、指向设备、蓝牙设备等)通信,也可与一个或者多个其他用户终端进行通信。这种通信可以通过输入/输出(i/o)接口440进行,并在显示单元430上进行显示。并且,装置40还可以通过网络适配器450与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器450通过总线460与装置40中的其它模块通信。应当明白,尽管图中未示出,但可以结合装置40使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

示例性程序产品

在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序代码在被处理器执行时,所述程序代码用于使所述处理器执行上面描述的方法。

所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。

如图4所示,描述了根据本发明的实施方式的程序产品50,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1