数据加载方法及装置与流程

文档序号:15020030发布日期:2018-07-25 00:29阅读:161来源:国知局

本发明涉及互联网领域,具体而言,涉及一种数据加载方法及装置。



背景技术:

客户端App下拉刷新内容、上拉获取更多的流式布局(类似于下述交互模式:用户使用客户端浏览内容一般需要不断上滚屏幕,当本地内容浏览完毕时,客户端会发出网络请求,从数据库获取更多数据作为新的本地内容,此时新的本地内容将以追加的形式置于当前正在浏览的本地内容的底部。这样,用户就能通过上拉操作,不断从客户端获取更多浏览内容)已经成为内容类及电商类等App的基本交互形态,现有的二手物品交易平台(简称为二手交易平台)App也具有类似的交互需求,与此同时这种App也面临一些差异化问题,具体如下:

1、用户在浏览过程中,当屏幕滚动条下滑至页面底部时,不能及时补充后续数据,只能在用户手动触发“转动菊花”之后,客户端才会向数据库发送网络请求,以获取更多数据,增加了用户上拉等待数据加载的时间,导致用户体验差。

2、用户发布物品具有一定的随机性,导致下拉获取更多数据会具有一定的重复概率,如某一时刻从后台服务器请求到前10条数据A,由于下拉获取更多数据之前用户随机发布物品,导致下拉数据的第二页的前10-20条的数据B和数据A中有重复数据。

针对上述问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种数据加载方法及装置,以至少解决相关技术中由于只有在用户浏览完滚动视图已加载的全部滚动视图信息后才会请求继续加载其他滚动视图信息造成的用户等待时间长、体验度差的技术问题。

根据本发明实施例的一个方面,提供了一种数据加载方法,包括:在移动终端上检测到对上述移动终端的触摸屏执行的滚动视图滑动操作,其中,上述滚动视图滑动操作用于指示对上述触摸屏上显示的滚动视图进行滚动显示;判断上述滚动视图已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与上述当前一组滚动视图信息之间的比例是否达到预定阈值,其中,上述预定阈值小于1;在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与上述当前一组滚动视图信息之间的比例达到上述预定阈值后,向服务器请求加载上述滚动视图的下一组滚动视图信息。

根据本发明实施例的另一方面,还提供了一种数据加载装置,包括:检测单元,用于在移动终端上检测到对上述移动终端的触摸屏执行的滚动视图滑动操作,其中,上述滚动视图滑动操作用于指示对上述触摸屏上显示的滚动视图进行滚动显示;第一判断单元,用于判断上述滚动视图已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与上述当前一组滚动视图信息之间的比例是否达到预定阈值,其中,上述预定阈值小于1;请求单元,用于在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与上述当前一组滚动视图信息之间的比例达到上述预定阈值后,向服务器请求加载上述滚动视图的下一组滚动视图信息。

在本发明实施例中,采用在用户浏览了滚动视图已加载的一组滚动视图信息中指定数据量的滚动视图信息之后,为该滚动视图预加载下一组滚动视图信息的方式,通过在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作,其中,滚动视图滑动操作用于指示对触摸屏上显示的滚动视图进行滚动显示;判断滚动视图已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例是否达到预定阈值,其中,预定阈值小于1;在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息,达到了为用户预加载滚动视图信息的目的,从而实现了缩短用户等待时间长甚至消除用户等待时间以及提高用户体验的技术效果,进而解决了相关技术中由于只有在用户浏览完滚动视图已加载的全部滚动视图信息后才会请求继续加载其他滚动视图信息造成的用户等待时间长、体验度差的技术问题。另一方面本发明可以动态判断硬件和网络环境的差异化的决策预加载策略,减小了用户非wifi环境下的流量费用,提升了弱硬件环境的用户体验。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的数据加载方法的硬件环境的示意图;

图2是根据本发明实施例的一种可选的数据加载方法的流程图;

图3是根据本发明实施例的一种可选的数据加载方法的流程图;

图4是根据本发明实施例的一种可选的数据加载方法的流程图;

图5是根据本发明实施例的一种可选的已加载、被预览、下一组滚动视频信息的关系图;

图6是根据本发明实施例的一种可选的数据加载装置的示意图;

图7是根据本发明实施例的一种可选的数据加载装置的示意图;

图8是根据本发明实施例的一种可选的数据加载装置的示意图;

图9是根据本发明实施例的一种可选的数据加载装置的示意图;

图10是根据本发明实施例的一种可选的数据加载装置的示意图;

图11是根据本发明实施例的一种可选的数据加载装置的示意图;

图12是根据本发明实施例的一种可选的数据加载装置的示意图;

图13是根据本发明实施例的一种可选的数据加载装置的示意图;

图14是根据本发明实施例的一种终端的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

首先,在对本发明实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:

流式布局:用户使用移动终端上的客户端浏览内容一般需要不断上滚屏幕,当已加载到本地的内容浏览完毕时,客户端会发出网络请求,从数据库获取更多数据作为新的内容加载到本地,此时新的本地内容将以追加的形式置于当前正在浏览的本地内容的底部。这样,用户就能通过上拉操作,不断从客户端获取更多浏览内容,类似上述交互模式即为流式布局。

预加载数据:根据用户过往历史状态,为用户尽可能早的准备即有可能将浏览到的数据内容。

实施例1

根据本发明实施例,提供了一种数据加载方法的方法实施例。

可选地,在本实施例中,上述数据加载方法可以应用于如图1所示的由服务器102和终端104(即移动终端)所构成的硬件环境中。如图1所示,服务器102通过网络与终端104进行连接,上述网络包括但不限于:广域网、城域网或局域网,终端104并不限定于PC、手机、平板电脑等。本发明实施例的数据加载方法可以由服务器102来执行,也可以由终端104来执行,还可以是由服务器102和终端104共同执行。其中,终端104执行本发明实施例的数据加载方法也可以是由安装在其上的客户端来执行。

图2是根据本发明实施例的一种可选的数据加载方法的流程图,如图2所示,该方法可以包括以下步骤:

步骤S202,在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作,其中,滚动视图滑动操作用于指示对触摸屏上显示的滚动视图进行滚动显示;

步骤S204,判断滚动视图已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例是否达到预定阈值,其中,预定阈值小于1;

步骤S206,在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息。

通过上述步骤S202至步骤S208,通过在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作,其中,滚动视图滑动操作用于指示对触摸屏上显示的滚动视图进行滚动显示;判断滚动视图已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例是否达到预定阈值,其中,预定阈值小于1;在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息,可以解决相关技术中由于只有在用户浏览完滚动视图已加载的全部滚动视图信息后才会请求继续加载其他滚动视图信息造成的用户等待时间长、体验度差的技术问题,进而达到了为用户预加载滚动视图信息的目的,从而实现了缩短用户等待时间长甚至消除用户等待时间以及提高用户体验的技术效果。

在步骤S202提供的技术方案中,实施时,移动终端(如手机等)上的某个客户端(具有流式布局特点,如二手交易平台等)开启后,如果用户滑动触摸屏,使触摸屏上显示的滚动视图进行滚动显示时,移动终端侧就会检测到对移动终端的触摸屏执行的滚动视图滑动操作。需要说明的是,上述客户端的买卖首页是类电商类布局模式(即流式布局特点),用户可以通过下拉刷新数据,通过上拉获取更多数据。

在步骤S204提供的技术方案中,实施时,在用户上拉获取更多数据的过程中,对于某滚动视图而言,会逐条浏览已加载到本地的当前一组滚动视图信息,其中,当已浏览的滚动视图信息量达到预定条数,即与加载到本地的所有滚动视图信息的比值达到一定预定阈值时,其中,预定阈值小于1,系统会自动为该滚动视图加载新的页面信息。此处需要说明的是,判断某条滚动视图信息是否已被浏览过可以包括如下方式:判断该条滚动视图信息是已被用户点击、转发或评论等,或者,判断位于该条滚动视图信息之后某条滚动视图信息是已被用户点击、转发或评论等(如,假设一组滚动视图信息包括10条信息,而信息A位于第6条的位置,信息B位于第8条的位置,在这种情况下,若信息B被浏览过,则默认为信息A也被浏览过了,若信息B还未被浏览过,则需要判断信息A是否已被用户点击、转发或评论过等,若是,则认为信息A被浏览过了,否则认为信息A还未被浏览过)若满足其中至少之一,则认为该条滚动视图信息已被浏览过;否则,则认为该条滚动视图信息还没有被浏览过。

与相关技术只能在用户浏览完已加载到本地的全部滚动视图信息后,系统才会自动为该滚动视图加载新的页面信息相比,本申请可以预加载数据(如在用户滚动至屏幕底部之前较早的为用户拉取更多的数据),解决无预加载数据导致时间成本高,体验差的问题,从而节省用户等待时间,甚至消除用户等待时间,大大提高用户体验。

在步骤S206提供的技术方案中,实施时,在判断结果为是的情况下,客户端可以向服务器发送数据加载请求,向服务器请求加载滚动视图的下一组滚动视图信息;在判断结果为否的情况下,不会向服务器发送任何数据加载请求。

作为一种可选的实施例,在步骤S202之前,即在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作之前,或者,在步骤S206之前,即在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值,向服务器请求加载滚动视图的下一组滚动视图信息之前,上述方法还可以包括:

步骤S208,判断移动终端的硬件条件是否满足第一预定条件;和/或判断移动终端所处的网络环境是否满足第二预定条件;

步骤S210,在判断出移动终端的硬件条件满足第一预定条件,和/或

步骤S212,在判断出移动终端的硬件条件满足第一预定条件,和/或移动终端的网络环境满足第二预定条件后,执行向服务器请求加载滚动视图的下一组滚动视图信息的相关步骤。

例如,实施时,可以判断移动终端是否是预定机型,若是,则执行向服务器请求加载滚动视图的下一组滚动视图信息的相关步骤,若否,则不执行向服务器请求加载滚动视图的下一组滚动视图信息的相关步骤;和/或,实施时,可以判断移动终端的网络环境是否是WIFI环境,若是,则执行向服务器请求加载滚动视图的下一组滚动视图信息的相关步骤,若否,则不执行向服务器请求加载滚动视图的下一组滚动视图信息的相关步骤。

通过本发明实施例,克服了无差异化的数据预加载会较为严重损害性硬件性能较差的用户以及网络环境较差的用户的缺陷。因为上述两种用户对低性能以及弱网络的环境有一定的心理预期,更期望浏览到最后的数据时主动触发上拉以获取更多数据的操作,以此减小数据流量损耗、降低低性能机型带来的时间成本,为此差异化地针对不同的硬件环境及网络环境做出差异化的数据预加载行为,能够极大的提升低性能、弱网络环境下的用户体验。

为解决上述技术方面和用户体验方面的问题,本申请提出了“流式布局自适应性预加载模式”。具体为自适应当前硬件环境和网络环境的情况,决策是否进行预加载。如当前硬件环境是在性能较差的机型(iPhone4,小米1等)上,或者当前是在2G、3G等非WiFi网络环境下,则不开启预加载功能,最大限度的平衡性能和流畅性之间的矛盾。

其中,自适应性预加载策略如图3所示为:App启动时,从服务器拉取数据,为保证数据同步性,此处不做数据缓存;当用户滑动页面靠近页面底部位置时,做预加载判断;硬件环境较差或在非WiFi情况下,不开启预加载功能,只能手动上拉触发更多数据加载接口的调用。

通过本发明实施例,克服了相关技术不区分网络环境、硬件环境,损害了低端机以及弱网络用户的体验,耗费网络流量的缺陷。

作为一种可选的实施例,在步骤S206之后,即在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值,向服务器请求加载滚动视图的下一组滚动视图信息之后,上述方法还可以包括:

步骤S214,接收服务器返回的滚动视图需要加载的下一组滚动视图信息;

步骤S216,对滚动视图需要加载的下一组滚动视图信息执行数据去重操作,其中,数据去重操作用于指示从滚动视图需要加载的下一组滚动视图信息中过滤掉在滚动视图已加载的当前一组滚动视图信息中已经存在的数据;

步骤S218,根据数据去重操作对应的数据去重结果,为滚动视图加载下一组滚动视图信息中的对应信息。

对于二手交易平台而言,由于用户发布物品具有随机性,导致客户端在上拉获取更多的交互需求之中,容易出现上拉获得的更多数据和本地数据具有一定的重复概率,因此去重过滤成为解决重复的必须手段。

实施时,在确定并向服务器请求加载滚动视图的下一组滚动视图信息之后,对于服务器返回的数据,先做去重处理,再根据去重结果进行加载,克服了相关技术中无“去重过滤”,会存在内容重复出现,影响用户体验的缺陷,并且采用去重过滤可以确保不重复加载数据。

例如,对于二手物品交易而言,同一卖家可能在不同时刻重复发布了同一商品的交易信息,例如,卖家A分别于2017年1月3日下午3点和3点10分发布了关于二手物品1的两条交易信息,其中,3点发布的信息刚好在当前一组滚动视图信息中被加载了,而理论上3点10分发布的信息刚好会在下一组滚动视图信息中被加载,这样必然会导致信息重复,为了避免信息重复加载,可以执行信息去重操作,具体流程如下:将当前一组滚动视图信息看作一个有序数据集合(如集合1),将下一组滚动视图信息看作另一个有序数据集合(如集合2),为了避免信息重复加载,在信息加载之前,可以计算(集合2-集合1),并将计算结果作为集合3,其中,集合3中的数据作为下一组滚动视图信息进行加载。

作为一种可选的实施例,上述步骤S206可以包括,即在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息可以包括:

步骤S220,在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器发送数据加载请求,其中,数据加载请求用于指示向服务器请求加载滚动视图的下一组滚动视图信息;

步骤S222,对数据加载请求执行加锁操作;

其中,对应的,在接收到服务器返回的滚动视图需要加载的下一组滚动视图信息之后,上述方法还可以包括:

步骤S224,对数据加载请求执行解锁操作。

由于用户在通过滑动触摸屏浏览内容时,可能会来回上下拉数据,多次触发系统向服务器发送数据加载请求,或者由于网络或硬件等问题,导致在系统发出数据加载请求后,服务器还未及时返回数据时,用户已经浏览完所有的本地内容,并手动触发了系统,使其发出数据加载请求。为了防止向服务器多次发送无意义的数据加载请求,给服务器带来困扰,优选地,如图4所示,可以实施上述方案,在上述自适应预加载的基础上:获取更多内容的数据加载请求发起之后,对本次请求加锁,保证同一时间只进行一次数据预加载;进一步,为了防止后续出现的其他次数据预加载受影响,在本次数据预加载返回数据后,就解锁本次数据预加载对应的数据加载请求,即,收到数据响应之后,对本次数据加载请求的加锁进行解锁;优选地,在解锁的同时验证数据的有效性,剔除无效数据条目。

作为一种可选的实施例,上述步骤S216可以包括,即对所述滚动视图需要加载的下一组滚动视图信息执行数据去重操作可以包括:

步骤S226,确定与所述滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合;

步骤S228,确定与所述滚动视图已加载的当前一组滚动视图信息对应的第二有序数据集合;

步骤S230,计算所述第一有序数据集合与所述第二有序数据集合之间的差值,得到有序差集;

步骤S232,将所述有序差集作为与所述数据去重操作对应的数据去重结果。

例如,通过数据加载请求获得有序数据集合为A,已有有序数据集合(即已加载到本地的数据对应的集合)为B,则对A与B做差集运算,得到有序数据差的集合(简称为有序差集)为C,其中,C与B相比,其中的数据为无重复有效数据。

需要说明的是,上述的对两个集合做差集,最基础的操作即为相等操作。集合中元素相等操作的时间复杂度直接影响集合的差运算、合并运算等等。优选地,本申请的上述技术方案可以采用物品的gid(后台数据库gid为物品的主键)作为集合元素的哈希值,实践证明此举大大降低集合操作的时间复杂度,提高了效率,进而提高了预加载的流畅性。

作为一种可选的实施例,上述步骤S218可以包括,即根据所述数据去重操作对应的数据去重结果,为所述滚动视图加载下一组滚动视图信息中的对应信息可以包括:

步骤S234,将所述有序差集追加在所述第二有序数据集合后,得到第三有序数据集合;

步骤S236,使用所述有序差集为所述滚动视图加载下一组滚动视图信息中的对应信息;

步骤S238,使用所述第三有序数据集合更新所述移动终端的触摸屏上显示的用户界面。

例如,可以通过如下流程实现数据预加载:对于某滚动视图的一组滚动视图信息(假设共有10条)而言,如果该组滚动视图信息中的前8条已经被浏览了,则被浏览信息与已加载信息之间的比例为4/5(假设上述预定阈值为4/5),此时,可以通过数据加载请求获得有序数据集合为A,已有有序数据集合(即已加载到本地的数据对应的集合)为B,则对A与B做差集运算,得到有序数据差的集合(简称为有序差集)为C,其中,C与B相比,其中的数据为无重复有效数据,此时将有序数据集合C追加至有序数据合集B末尾,得到有序数据集合D,用集合D更新UI以实现预加载,以此保证客户端的性能和体验都达到最优。其中,已加载、被预览、下一组滚动视频信息之间的关系如图5所示。

作为一种可选的实施例,在步骤S234之前,即在将所述有序差集追加在所述第二有序数据集合后,得到第三有序数据集合之前,上述方法还可以包括:

步骤S240,判断所述有序差集中的元素数是否为0,其中,在判断出所述有序差集中的元素数不为0后,执行将所述有序差集追加在所述第二有序数据集合后,得到第三有序数据集合的步骤。否则,不做任何追加处理。

通过本发明实施例,可以只在有序差集不为空的情况才做数据追加处理,而在有序差集为空的情况下不做数据追加处理,从而减轻CPU负担,节省资源开支。

作为一种可选的实施例,在步骤S226之后,即在确定与所述滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合之后,上述方法还可以包括:

步骤S242,判断与所述滚动视图需要加载的下一组滚动视图信息对应的所述第一有序数据集合中的元素数是否为0,其中,在判断出与所述滚动视图需要加载的下一组滚动视图信息对应的所述第一有序数据集合中的元素数不为0后,执行确定与所述滚动视图已加载的当前一组滚动视图信息对应的第二有序数据集合的步骤。

通过本发明实施例,可以只在第一有序数据集合不为空的情况才做差集运算的相关处理,而在第一有序数据集合为空的情况下不做差集运算的相关处理,从而减轻CPU负担,节省资源开支。

需要说明的是,本申请技术方案是适应于所有流式布局环境下平衡用户体验和硬件环境、网络环境的解决方案。本方案解决的核心问题的一部分是区分硬件环境、网络环境的自适应性预加载策略,如考虑到低端机型也需要做必要的适配,如考虑到非WiFi网络环境下需要最大限度让用户感知到流量的使用情况,降低网络损耗。本方案解决的核心问题的另一部分是基于本地数据对网络拉取获得的数据做去重处理,验证数据有效性,并展示。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

根据本发明实施例,还提供了一种用于实施上述数据加载方法的数据加载装置。图6是根据本发明实施例的一种可选的数据加载装置的示意图,如图6所示,该装置可以包括:检测单元502,用于在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作,其中,滚动视图滑动操作用于指示对触摸屏上显示的滚动视图进行滚动显示;第一判断单元504,用于判断滚动视图已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例是否达到预定阈值,其中,预定阈值小于1;请求单元506,用于在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息。

需要说明的是,该实施例中的检测单元502可以用于执行本申请实施例1中的步骤S202,该实施例中的第一判断单元504可以用于执行本申请实施例1中的步骤S204,该实施例中的请求单元506可以用于执行本申请实施例1中的步骤S206。

此处需要说明的是,上述单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述单元作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。

作为一种可选的实施例,如图7所示,上述装置还可以包括:第二判断单元602,用于在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作之前(如图7所示),或者,在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值,向服务器请求加载滚动视图的下一组滚动视图信息之前(图7中未示出),判断移动终端的硬件条件是否满足第一预定条件;和/或第三判断单元604,用于判断移动终端所处的网络环境是否满足第二预定条件;执行单元606,用于在判断出移动终端的硬件条件满足第一预定条件,和/或判断出移动终端所处的网络环境满足第二预定条件后,执行向服务器请求加载滚动视图的下一组滚动视图信息的相关步骤。

需要说明的是,该实施例中的第二判断单元602可以用于执行本申请实施例1中的步骤S208,该实施例中的第三判断单元604可以用于执行本申请实施例1中的步骤S210,该实施例中的执行单元606可以用于执行本申请实施例1中的步骤S212。

此处需要说明的是,上述单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述单元作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。

作为一种可选的实施例,如图8所示,上述装置还可以包括:接收单元702,用于在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值,向服务器请求加载滚动视图的下一组滚动视图信息之后,接收服务器返回的滚动视图需要加载的下一组滚动视图信息;过滤单元704,用于对滚动视图需要加载的下一组滚动视图信息执行数据去重操作,其中,数据去重操作用于指示从滚动视图需要加载的下一组滚动视图信息中过滤掉在滚动视图已加载的当前一组滚动视图信息中已经存在的数据;加载单元706,用于根据数据去重操作对应的数据去重结果,为滚动视图加载下一组滚动视图信息中的对应信息。

需要说明的是,该实施例中的接收单元702可以用于执行本申请实施例1中的步骤S214,该实施例中的过滤单元704可以用于执行本申请实施例1中的步骤S216,该实施例中的加载单元706可以用于执行本申请实施例1中的步骤S218。

此处需要说明的是,上述单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述单元作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。

作为一种可选的实施例,如图9所示,上述请求单元506可以包括:发送模块802,用于在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器发送数据加载请求,其中,数据加载请求用于指示向服务器请求加载滚动视图的下一组滚动视图信息;加锁模块804,用于对数据加载请求执行加锁操作;解锁模块806,用于在接收到服务器返回的滚动视图需要加载的下一组滚动视图信息之后,对数据加载请求执行解锁操作。

需要说明的是,该实施例中的发送模块802可以用于执行本申请实施例1中的步骤S220,该实施例中的加锁模块804可以用于执行本申请实施例1中的步骤S222,该实施例中的解锁模块806可以用于执行本申请实施例1中的步骤S224。

此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。

作为一种可选的实施例,如图10所示,上述过滤单元704可以包括:第一确定模块902,用于确定与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合;第二确定模块904,用于确定与滚动视图已加载的当前一组滚动视图信息对应的第二有序数据集合;计算模块906,用于计算第一有序数据集合与第二有序数据集合之间的差值,得到有序差集;第三确定模块908,用于将有序差集作为与数据去重操作对应的数据去重结果。

需要说明的是,该实施例中的第一确定模块902可以用于执行本申请实施例1中的步骤S226,该实施例中的第二确定模块904可以用于执行本申请实施例1中的步骤S228,该实施例中的计算模块906可以用于执行本申请实施例1中的步骤S230,该实施例中的第三确定模块908可以用于执行本申请实施例1中的步骤S232。

此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。

作为一种可选的实施例,如图11所示,上述加载单元706可以包括:添加模块1002,用于将有序差集追加在第二有序数据集合后,得到第三有序数据集合;加载模块1004,用于使用有序差集为滚动视图加载下一组滚动视图信息中的对应信息;更新模块1006,用于使用第三有序数据集合更新移动终端的触摸屏上显示的用户界面。

需要说明的是,该实施例中的添加模块1002可以用于执行本申请实施例1中的步骤S234,该实施例中的加载模块1004可以用于执行本申请实施例1中的步骤S236,该实施例中的更新模块1006可以用于执行本申请实施例1中的步骤S238。

此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。

作为一种可选的实施例,如图12所示,上述装置还可以包括:第四判断单元1102,用于在将有序差集追加在第二有序数据集合后,得到第三有序数据集合之前,判断有序差集中的元素数是否为0,其中,添加模块1002,还用于在判断出有序差集中的元素数不为0后,执行将有序差集追加在第二有序数据集合后,得到第三有序数据集合的功能。

需要说明的是,该实施例中的第四判断单元1102可以用于执行本申请实施例1中的步骤S240。

此处需要说明的是,上述单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述单元作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。

作为一种可选的实施例,如图13所示,上述装置还可以包括:第五判断单元1202,用于在确定与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合之后,判断与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合中的元素数是否为0,其中,第二确定模块904,还用于在判断出与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合中的元素数不为0后,执行确定与滚动视图已加载的当前一组滚动视图信息对应的第二有序数据集合的功能。

需要说明的是,该实施例中的第五判断单元1202可以用于执行本申请实施例1中的步骤S242。

此处需要说明的是,上述单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述单元作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。

通过上述模块或单元,可以解决了相关技术中由于只有在用户浏览完滚动视图已加载的全部滚动视图信息后才会请求继续加载其他滚动视图信息造成的用户等待时间长、体验度差的技术问题,进而达到了为用户预加载滚动视图信息的目的,从而实现了缩短用户等待时间长甚至消除用户等待时间以及提高用户体验的技术效果。

实施例3

根据本发明实施例,还提供了一种用于实施上述数据加载方法的服务器或终端。

图14是根据本发明实施例的一种终端的结构框图,如图14所示,该终端可以包括:一个或多个(图中仅示出一个)处理器201、存储器203、以及传输装置205(如上述实施例中的发送装置),如图14所示,该终端还可以包括输入输出设备207。

其中,存储器203可用于存储软件程序以及模块,如本发明实施例中的数据加载方法和装置对应的程序指令/模块,处理器201通过运行存储在存储器203内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据加载方法。存储器203可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器203可进一步包括相对于处理器201远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

上述的传输装置205用于经由一个网络接收或者发送数据,还可以用于处理器与存储器之间的数据传输。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置205包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置205为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。

其中,具体地,存储器203用于存储应用程序。

处理器201可以通过传输装置205调用存储器203存储的应用程序,以执行下述步骤:在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作,其中,滚动视图滑动操作用于指示对触摸屏上显示的滚动视图进行滚动显示;判断滚动视图已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例是否达到预定阈值,其中,预定阈值小于1;在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息。

处理器201还用于执行下述步骤:在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作之前,或者,在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值,向服务器请求加载滚动视图的下一组滚动视图信息之前,判断移动终端的硬件条件是否满足第一预定条件;和/或判断移动终端所处的网络环境是否满足第二预定条件;在判断出移动终端的硬件条件满足第一预定条件,和/或判断出移动终端所处的网络环境满足第二预定条件后,执行向服务器请求加载滚动视图的下一组滚动视图信息的相关步骤。

处理器201还用于执行下述步骤:在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值,向服务器请求加载滚动视图的下一组滚动视图信息之后,接收服务器返回的滚动视图需要加载的下一组滚动视图信息;对滚动视图需要加载的下一组滚动视图信息执行数据去重操作,其中,数据去重操作用于指示从滚动视图需要加载的下一组滚动视图信息中过滤掉在滚动视图已加载的当前一组滚动视图信息中已经存在的数据;根据数据去重操作对应的数据去重结果,为滚动视图加载下一组滚动视图信息中的对应信息。

处理器201还用于执行下述步骤:在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息所包括的步骤:在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器发送数据加载请求,其中,数据加载请求用于指示向服务器请求加载滚动视图的下一组滚动视图信息;对数据加载请求执行加锁操作;在接收到服务器返回的滚动视图需要加载的下一组滚动视图信息之后,方法还包括:对数据加载请求执行解锁操作。

处理器201还用于执行下述步骤:对滚动视图需要加载的下一组滚动视图信息执行数据去重操作所包括的步骤:确定与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合;确定与滚动视图已加载的当前一组滚动视图信息对应的第二有序数据集合;计算第一有序数据集合与第二有序数据集合之间的差值,得到有序差集;将有序差集作为与数据去重操作对应的数据去重结果。

处理器201还用于执行下述步骤:根据数据去重操作对应的数据去重结果,为滚动视图加载下一组滚动视图信息中的对应信息所包括的步骤:将有序差集追加在第二有序数据集合后,得到第三有序数据集合;使用有序差集为滚动视图加载下一组滚动视图信息中的对应信息;使用第三有序数据集合更新移动终端的触摸屏上显示的用户界面。

处理器201还用于执行下述步骤:在将有序差集追加在第二有序数据集合后,得到第三有序数据集合之前,判断有序差集中的元素数是否为0,其中,在判断出有序差集中的元素数不为0后,执行将有序差集追加在第二有序数据集合后,得到第三有序数据集合的步骤。

处理器201还用于执行下述步骤:在确定与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合之后,判断与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合中的元素数是否为0,其中,在判断出与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合中的元素数不为0后,执行确定与滚动视图已加载的当前一组滚动视图信息对应的第二有序数据集合的步骤。

采用本发明实施例,提供了一种数据加载方法的方案。通过在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作,其中,滚动视图滑动操作用于指示对触摸屏上显示的滚动视图进行滚动显示;判断滚动视图已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例是否达到预定阈值,其中,预定阈值小于1;在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息,达到了为用户预加载滚动视图信息的目的,从而实现了缩短用户等待时间长甚至消除用户等待时间以及提高用户体验的技术效果,进而解决了相关技术中由于只有在用户浏览完滚动视图已加载的全部滚动视图信息后才会请求继续加载其他滚动视图信息造成的用户等待时间长、体验度差的技术问题。

可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。

本领域普通技术人员可以理解,图14所示的结构仅为示意,终端可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图14其并不对上述电子装置的结构造成限定。例如,终端还可包括比图14中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图14所示不同的配置。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。

实施例4

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行数据加载方法的程序代码。

可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

S1,在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作,其中,滚动视图滑动操作用于指示对触摸屏上显示的滚动视图进行滚动显示;

S2,判断滚动视图已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例是否达到预定阈值,其中,预定阈值小于1;

S3,在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在移动终端上检测到对移动终端的触摸屏执行的滚动视图滑动操作之前,或者,在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值,向服务器请求加载滚动视图的下一组滚动视图信息之前,判断移动终端的硬件条件是否满足第一预定条件;和/或判断移动终端所处的网络环境是否满足第二预定条件;在判断出移动终端的硬件条件满足第一预定条件,和/或判断出移动终端所处的网络环境满足第二预定条件后,执行向服务器请求加载滚动视图的下一组滚动视图信息的相关步骤。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值,向服务器请求加载滚动视图的下一组滚动视图信息之后,接收服务器返回的滚动视图需要加载的下一组滚动视图信息;对滚动视图需要加载的下一组滚动视图信息执行数据去重操作,其中,数据去重操作用于指示从滚动视图需要加载的下一组滚动视图信息中过滤掉在滚动视图已加载的当前一组滚动视图信息中已经存在的数据;根据数据去重操作对应的数据去重结果,为滚动视图加载下一组滚动视图信息中的对应信息。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器请求加载滚动视图的下一组滚动视图信息所包括的步骤:在判断出已加载的当前一组滚动视图信息中被浏览到的滚动视图信息与当前一组滚动视图信息之间的比例达到预定阈值后,向服务器发送数据加载请求,其中,数据加载请求用于指示向服务器请求加载滚动视图的下一组滚动视图信息;对数据加载请求执行加锁操作;在接收到服务器返回的滚动视图需要加载的下一组滚动视图信息之后,方法还包括:对数据加载请求执行解锁操作。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:对滚动视图需要加载的下一组滚动视图信息执行数据去重操作所包括的步骤:确定与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合;确定与滚动视图已加载的当前一组滚动视图信息对应的第二有序数据集合;计算第一有序数据集合与第二有序数据集合之间的差值,得到有序差集;将有序差集作为与数据去重操作对应的数据去重结果。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:根据数据去重操作对应的数据去重结果,为滚动视图加载下一组滚动视图信息中的对应信息所包括的步骤:将有序差集追加在第二有序数据集合后,得到第三有序数据集合;使用有序差集为滚动视图加载下一组滚动视图信息中的对应信息;使用第三有序数据集合更新移动终端的触摸屏上显示的用户界面。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在将有序差集追加在第二有序数据集合后,得到第三有序数据集合之前,判断有序差集中的元素数是否为0,其中,在判断出有序差集中的元素数不为0后,执行将有序差集追加在第二有序数据集合后,得到第三有序数据集合的步骤。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在确定与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合之后,判断与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合中的元素数是否为0,其中,在判断出与滚动视图需要加载的下一组滚动视图信息对应的第一有序数据集合中的元素数不为0后,执行确定与滚动视图已加载的当前一组滚动视图信息对应的第二有序数据集合的步骤。

可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。

可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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