一种基于滑动检测的数据传输方法及装置的制作方法

文档序号:7758962阅读:170来源:国知局
专利名称:一种基于滑动检测的数据传输方法及装置的制作方法
技术领域
本发明涉及网络通信技术领域,特别涉及一种基于滑动检测的数据传输方法及装置。
背景技术
随着网络技术的发展,互联网已经深入到广大的网络用户心中。在众多的互联网应用中,通过消息客户端进行信息传播与分享已经成为广大网络用户的生活工作及休闲中不可或缺的部分。在基于消息客户端的通信过程中,通常有大量的消息(例如文本信息、图片信息和音/视频信息等)需要传输。微博,即微博客(Micro Blog),就是一种采用上述消息客户端进行信息传播的系统,它是一个基于用户关系的即时的信息分享、传播及获取平台。用户可以通过手机、电脑等终端设备登录微博客户端,从而实现信息共享。考虑到微博的即时性,手机自然成了微博的最好的载体之一。当用户使用手机浏览微博消息时,通常会做一些滑动操作。这样,一些原来在屏幕之外的微博消息就会滑动到屏幕中来。在微博系统中,消息是由消息信元(Message Cell)来承载的。通常,每个Message Cell包括消息内容、消息发表人的名称及发表人的头像等。多个Message Cell按照时间顺序形成一个列表(TimeLine),并展示在手机屏幕上。当用户进行屏幕滑动操作时,原来在屏幕之外的Message Cell就会滑动到屏幕中来。对于在滑动过程中进入到屏幕中来的每个Message Cell,微博客户端都要下载该 Message Cell对应的消息内容、发表人的名称和发表人的头像。而当用户进行连续快速的滑动操作时,就会导致大量的Message Cell从屏幕外滑动到屏幕中来并再次滑动出屏幕。这样,微博客户端就需要下载各个曾经到过屏幕中来的 Message Cell对应的消息内容、发表人的名称及头像。然而,用户此时关心的并不是在连续快速的滑动过程中曾经到过屏幕中来的那些Message Cell,而是当滑动操作结束时,屏幕上显示的那些Message Cell。这样,大量的网络资源浪费在了滑动过程中到过屏幕中来的那些Message Cell对应的消息内容和/或发表人头像的下载上,尤其是当Message Cell 对应的消息内容包含图片或音/视频等数据量较大的文件时。对于采用按数据流量收费方式接入网络的手机用户来说,上述的下载过程给用户带来了大量的数据流量的浪费及较差的用户体验。同理,对于采用3G等无线方式接入网络的电脑用户来说,也存在着同样的问题。

发明内容
有鉴于此,本发明提供了一种基于滑动检测的数据传输方法及装置,从而降低网络数据流量,改善用户的体验。本发明提供的一种基于滑动检测的数据传输方法包括
当检测到消息信元列表TimeLine在用户终端的屏幕上滚动时,消息客户端记录在屏幕中可见的消息信元Message Cell ;消息客户端判断该Message Cell在预定时间后是否仍然在屏幕上可见;如果是, 从消息服务器下载该Message Cell对应的数据。本发明提供的一种基于滑动检测的数据传输装置包括检测模块、记录模块、判断模块和下载模块;其中,检测模块用于检测TimeLine是否在用户终端的屏幕上滚动;记录模块用于当检测模块检测到TimeLine在用户终端的屏幕上滚动时,记录在屏幕中可见的Message Cell ;判断模块用于判断记录模块记录的Message Cell在预定时间后是否仍然在屏幕上可见;下载模块用于当判断模块判断出Message Cell在预定时间后仍然在屏幕上可见时,从消息服务器下载该Message Cell对应的数据。通过本发明提供的基于滑动检测的数据传输方法及装置,仅当Message Cell在屏幕中停留的时间达到预定的定时时间时,才触发下载该Message Cell对应的数据。这样, 可以避免下载那些滑动到屏幕中来又快速滑动到屏幕之外的Message Cell对应的数据,从而大幅度的降低用户的网络数据流量,改善用户的体验。


图1为本发明实施例中一种基于滑动检测的数据传输方法的流程图。图2为本发明另一实施例中一种基于滑动检测的数据传输方法的流程图。图3为本发明另一实施例中一种基于滑动检测的数据传输方法的流程图。图4为本发明实施例中一种基于滑动检测的数据传输装置的结构示意图。图5为本发明另一实施例中一种基于滑动检测的数据传输装置的结构示意图。图6为本发明另一实施例中一种基于滑动检测的数据传输装置的结构示意图。
具体实施例方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。本发明的核心思想是当检测到消息信元列表(TimeLine)在用户终端的屏幕上滚动时,消息客户端记录在屏幕中可见的消息信元(Message Cell);判断该Message Cell 在预定时间后是否仍然在屏幕中可见;如果是,从消息服务器下载该Message Cell对应的数据。这样,可以避免下载那些滑动到屏幕中来又快速滑动到屏幕之外的Message Cell对应的数据,从而大幅度的降低用户的网络数据流量,改善用户的体验。图1为本发明实施例中一种基于滑动检测的数据传输方法的流程图。如图1所示, 该方法包括步骤101,当检测到TimeLine在用户终端的屏幕上滚动时,消息客户端记录在屏幕中可见的Message Cell。步骤102,消息客户端判断该Message Cell在预定时间后是否仍然在屏幕上可见。如果是,执行步骤103;否则,结束本流程。步骤103,从消息服务器下载该Message Cell对应的数据。其中,用户终端可以是手机、电脑等设备;消息客户端可以是微博客户端;相应的,消息服务器可以是微博服务器;Message Cell对应的数据可以是Message Cell对应的消息内容中包含的图片、或者音/视频文件,还可以是Message Cell对应的消息发表人的头像。下面以用户通过手机登录微博客户端且Message Cell对应的数据为消息发表人的头像为例,对本发明提供的基于滑动检测的数据传输方法进行详细描述。图2为本发明实施例中一种基于滑动检测的数据传输方法的流程图。如图2所示, 该方法包括以下步骤步骤201,微博客户端检测TimeLine是否在手机屏幕上滚动,如果检测到 TimeLine在手机屏幕上滚动,则执行步骤202 ;否则,重复执行步骤201。以iphone手机为例,TimeLine作为控件会以iphone手机所用的ios系统提供的scrollview控件做为载体。当TimeLine滚动开始,ios系统会触发 scrollviewDidscroll事件通知微博客户端scrollview开始滚动。滚动停止时,ios系统会触发ScrollviewDidEndDecelerating事件来告诉微博客户端scrollview停止滚动。从而,微博客户端可以知道到TimeLine是否在手机屏幕上滚动。本领域技术人员也可以根据实际情况选择其他方法来检测TimeLine是否在手机屏幕上滚动。本发明对具体的检测方法没有限定。步骤202,微博客户端记录在手机屏幕上可见的Message Cell,并启动定时器。仍然以iphone手机为例,当一个Message Cell进入屏幕时,ios系统会触发 cellForRowAtlndexPath事件来通知微博客户端。在收到通知之后,微博客户端即可以判断出该Message Cell在手机屏幕上是可见的。此时,微博客户端记录该Message Cell的标识,并同时启动定时器。当一个Message Cell滑动到屏幕之外时,ios系统也会通知微博客户端。在收到通知之后,微博客户端可以判断出该Message Cell滑动出了屏幕。在本步骤中,随着TimeLine的滚动,手机屏幕上可能有多个Message Cell可见。 则微博客户端在每个Message Cell在进入屏幕时,记录该Message Cell的标识并同时启动该Message Cell对应的定时器。例如,当TimeLine在手机屏幕上滚动时,Message Cell 1首先进入屏幕。此时,微博客户端记录Message Cell 1对应的标识ID1,并启动Message Celll对应的定时器Tl。 然后,随着TimeLine的滚动,Message Cell 2进入屏幕。此时,微博客户端记录Message Cell 2对应的标识ID2,并启动Message Cell2对应的定时器T2,以此类推。其中,在屏幕上可见的各个Message Cell对应的标识可以存储在一个数组中。例如,在某个时刻,屏幕上可见的Message Cell包括Message Cell 1,Message Cell 2和 Message Cell 3,此时,该数组的内容包括ID1,ID2和ID3。在另一时刻,随着TimeLine的滚动,Message Cell 1滑动出了屏幕之外,同时Message Cell 4滑动到了屏幕中来。此时, 该数组的内容包括ID2, ID3和ID4。在本步骤中,定时器的时长可以根据实际情况设定。优选的,可以设定为0-1秒之间,此时,可以达到较好的视觉效果。
另外,各个Message Cell对应的定时器的时长可以相同也可以不同。步骤203,显示本地存储的默认头像。具体的,微博客户端可以判断本地是否存储有Message Cell对应的发表人的头像。如果有,则默认头像为本地存储的该Message Cell对应的发表人的头像。此时,微博客户端显示本地存储的该Message Cell对应的发表人的头像。如果本地没有存储该Message Cell对应的发表人的头像,则微博客户端可以显示本地存储的系统默认的头像。步骤204,微博客户端判断Message Cell对应的定时器是否到时,如果是,则执行步骤205 ;否则,重复执行步骤204。如果微博客户端在步骤202中记录了多个Message Cell并启动了多个定时器,则在本步骤中,微博客户端分别判断每个Message Cell对应的定时器是否到时。步骤205,判断Message Cell是否仍然在屏幕中可见。如果可见,执行步骤206 ; 否则,结束本流程。具体的,微博客户端可以通过判断上述的数组中是否包含该Message Cell对应的标识来判断该Message Cell是否仍然在屏幕中可见。例如,对于Message Cell 1,如果Message Cell 1对应的定时器Tl的定时时间到,微博客户端判断数组中是否包含Message Cell 1对应的标识ID 1。如果包含,则说明 Message Cell 1仍然在屏幕中可见;否则,说明Message Celll在屏幕中不可见,即已经滑动出了屏幕。步骤206,微博客户端更新所显示的头像。具体的,如果步骤203中判断出本地存储有该Message Cell对应的发表人的头像,微博客户端判断该Message Cell对应的发表人的头像的下载地址是否与本地存储的下载地址相同。如果相同,说明该Message Cell对应的发表人的头像没有更新,结束本流程。 如果不同,说明该Message Cell对应的发表人的头像已经更新,则微博客户端从微博服务器下载更新的头像,并显示该更新的头像以替换步骤203中显示的本地存储的该Message Cell对应的发表人的头像。如果步骤203中判断出本地没有存储该Message Cell对应的发表人的头像,则微博客户端直接从微博服务器下载该Message Cell对应的发表人的头像,然后显示该下载的头像以替换步骤203中的系统默认的头像。通过本发明的实施例可以看出,仅当Message Cell在屏幕中停留的时间达到预定的定时时间时,才触发下载该Message Cell对应的发表人的头像。这样,可以避免下载那些滑动到屏幕中来又快速滑动到屏幕之外的Message Cell对应的发表人的头像,从而大幅度的降低用户的网络数据流量。此外,在本发明中,Message Cell对应的数据也可以为Message Cell对应的消息内容中包含的图片、音/视频等大数据量文件。图3为本发明另一实施例中一种基于滑动检测的数据传输方法的流程图。在本实施例中,仍然以手机用户登录微博客户端为例。如图3所示,该方法包括步骤301-302与步骤201-202相同。步骤303,微博客户端显示本地存储的默认图片。步骤304-305与步骤204-205相同。
步骤306,微博客户端从微博服务器下载Message Cell对应的消息内容包含的图片或音/视频文件,并在手机屏幕上显示所下载的图片或者音/视频文件以替代步骤303 中显示的默认图片。这样,如果该Message Cell很快滑动出屏幕之外,可以避免下载这些大数据量的文件,从而降低用户的网络数据流量。以上对本发明实施例提供的基于滑动检测的数据传输方法进行了描述。下面将结合附图和具体实施例对本发明提供的基于滑动检测的数据传输装置进行具体描述。图4为本发明实施例中一种基于滑动检测的数据传输装置的结构示意图。如图4 所示,该装置包括检测模块401、记录模块402、判断模块403和下载模块404。检测模块401用于检测TimeLine是否在用户终端的屏幕上滚动。记录模块402用于当检测模块401检测到TimeLine在用户终端的屏幕上滚动时, 记录在屏幕中可见的Message Cell。判断模块403用于判断记录模块402记录的Message Cell在预定时间后是否仍然在屏幕上可见。下载模块404用于当判断模块403判断出Message Cell在预定时间后仍然在屏幕上可见时,从消息服务器下载该Message Cell对应的数据。具体的,本发明实施例提供的装置可以是微博客户端;对应的,上述的消息服务器可以为微博服务器。上述的Message Cell对应的数据可以是Message Cell对应的消息内容中包含的图片、或者音/视频文件,还可以是Message Cell对应的消息发表人的头像。下面以该数据传输装置为安装在手机上的微博客户端且Message Cell对应的数据为消息发表人的头像为例,对本发明提供的基于滑动检测的数据传输装置进行详细描述。图5为本发明实施例中一种基于滑动检测的数据传输装置的结构示意图。如图5 所示,该装置包括检测模块501、判断模块502、记录模块503、定时器模块504、存储模块 505、显示模块506及下载模块507。检测模块501,用于检测TimeLine是否在手机屏幕上滚动。如果检测到TimeLine 在手机屏幕上滚动,则通知判断模块502 ;否则,重复进行检测。判断模块502,用于在收到检测模块501的通知后,判断Message Cell是否进入屏幕,在Message Cell进入屏幕时发送进入通知给记录模块503和显示模块506,并触发定时器模块504开始计时。此外,判断模块502进一步用于判断Message Cell是否离开屏幕, 并在Message Cell离开屏幕时发送离开通知给记录模块503。记录模块503,用于在收到判断模块502的进入通知后,记录进入手机屏幕的 Message Cell的标识。具体的,记录模块503可以包含一个数组。当有多个Message Cell 进入手机屏幕时,该数组用于记录各个Message Cell的标识。此外,记录模块503进一步用于当收到判断模块502的离开通知后,从数组中删除对应的Message Cell的标识。定时器模块504,用于在判断模块502的触发下开始计时。具体的,定时器模块504 可以包括多个定时器单元,分别对应于记录模块503记录的各个Message Cell。例如,当 Message Cell 1进入了屏幕时,对应于Message Celll的定时器单元5041开始计时。当定时器模块504的定时时间到时,判断模块502判断Message Cell是否仍然在屏幕上可见。具体的,判断模块502可以发送查询消息给记录模块503。记录模块503收到查询消息后,判断数组中是否记录有该MessageCell对应的标识,并返回查询结果给判断模块502。如果查询结果指示数组中记录有该Message Cell对应的标识,则判断模块502 可以判断出该MessageCell仍然在屏幕上可见;否则,判断模块502可以判断出该Message Cell在屏幕上不可见,即已经滑动出了屏幕。存储模块505,用于存储默认头像和下载模块507下载的头像。具体的,当存储模块505存储有Message Cell对应的发表人的头像时,则默认头像为存储模块505存储的该 Message Cell对应的发表人的头像。如果存储模块505没有存储Message Cell对应的发表人的头像,则默认头像为存储模块505中存储的系统默认的头像。下载模块507,用于当判断模块502判断出Message Cell在定时器模块504的定时时间到后仍然在屏幕上可见时,判断存储模块505是否存储有该Message Cell对应的发表人的头像,如果有,判断该Message Cell对应的发表人的头像的是否已经更新,如果是, 则从微博服务器下载更新的头像,并发送给存储模块505和显示模块506 ;如果存储模块 505没有存储该Message Cell对应的发表人的头像,则从微博服务器下载该Message Cell 对应的发表人的头像,并发送给存储模块505和显示模块506。显示模块506,用于在收到判断模块502的进入通知时,显示存储模块505存储的默认头像,当接收到下载模块507发送的头像时,显示从下载模块507接收到的头像以替代所显示的默认头像。此外,对应图3所示的实施例,本发明实施例还提供了另一种基于滑动检测的数据传输装置。如图6所示,该装置包括检测模块601、判断模块602、记录模块603、定时器模块604、存储模块605、显示模块606及下载模块607。其中,检测模块601、判断模块602、记录模块603及定时器模块604的功能与图5 中对应模块的功能相同,在此不再赘述。存储模块605用于存储默认图片。下载模块607用于当判断模块602判断出Message Cell仍然在屏幕上可见时,从微博服务器下载Message Cell对应的消息内容中包含的图片或音/视频文件,并发送给显示模块606。显示模块606用于当收到判断模块602的进入通知时,显示存储模块605存储的默认图片,当收到下载模块607发送的图片或音/视频文件时,显示从下载模块607接收到的图片或者音/视频文件以替代之前显示的默认图片。以上仅以用户通过手机登录微博客户端为例,对本发明提供的基于滑动检测的数据传输方法及装置进行了描述。需要说明的是,本发明并不仅限于用户通过手机登录微博客户端的情况。通过本发明的实施例可以看出,仅当Message Cell在屏幕中停留的时间达到预定的定时时间时,才触发下载该Message Cell对应的数据。这样,可以避免下载那些滑动到屏幕中来又快速滑动到屏幕之外的Message Cell对应的数据,从而大幅度的降低用户的网络数据流量,改善用户的体验。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种基于滑动检测的数据传输方法,其特征在于,包括当检测到消息信元列表TimeLine在用户终端的屏幕上滚动时,消息客户端记录在屏幕中可见的消息信元Message Cell ;消息客户端判断该Message Cell在预定时间后是否仍然在屏幕上可见;如果是,从消息服务器下载该Message Cell对应的数据。
2.根据权利要求1所述的方法,其特征在于,所述记录在屏幕中可见的MessageCell 包括当所述的Message Cell进入屏幕显示范围时,记录该Message Cell的标识,当所述的Message Cell离开屏幕显示范围时,删除该Message Cell的标识。
3.根据权利要求2所述的方法,其特征在于,进一步包括在所述的Message Cell进入屏幕显示范围时,在屏幕上显示消息客户端本地存储的默认数据。
4.根据权利要求2所述的方法,其特征在于,所述判断该MessageCell在预定时间后是否仍然在屏幕上可见包括在预定时间后,判断所述消息客户端中是否记录有该Message Cell的标识;如果有, 则确定该Message Cell在所述的预定时间后仍然在屏幕上可见。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述的MessageCell对应的数据为Message Cell对应的消息发表人的头像。
6.根据权利要求5所述的方法,其特征在于,所述从消息服务器下载MessageCell对应的消息发表人的头像包括消息客户端判断本地是否存储有该Message Cell对应的消息发表人的头像;如果消息客户端本地存储有该Message Cell对应的消息发表人的头像,消息客户端判断该Message Cell对应的消息发表人的头像的是否已经更新,如果是,则消息客户端从消息服务器下载更新的头像;如果消息客户端本地没有存储该Message Cell对应的消息发表人的头像,则消息客户端从消息服务器下载该Message Cell对应的消息发表人的头像。
7.一种基于滑动检测的数据传输装置,应用于用户终端,其特征在于,包括检测模块、记录模块、判断模块和下载模块;其中,检测模块用于检测消息信元列表TimeLine是否在所述用户终端的屏幕上滚动;记录模块用于当检测模块检测到TimeLine在用户终端的屏幕上滚动时,记录在屏幕中可见的消息信元Message Cell ;判断模块用于判断记录模块记录的Message Cell在预定时间后是否仍然在屏幕上可见;下载模块用于当判断模块判断出Message Cell在预定时间后仍然在屏幕上可见时,从消息服务器下载该Message Cell对应的数据。
8.根据权利要求7所述的数据传输装置,其特征在于,所述的判断模块进一步用于判断所述的Message Cell是否进入屏幕显示范围,并在判断出所述的Message Cell进入屏幕显示范围时,发送进入通知给记录模块;以及判断所述的Message Cell是否离开屏幕显示范围,并在判断出所述的Message Cell离开屏幕显示范围时,发送离开通知给记录模块。
9.根据权利要求8所述的数据传输装置,其特征在于,所述的记录模块进一步用于当收到判断模块发送的进入通知时,记录该Message Cell的标识,当收到判断模块发送的离开通知时,删除该Message Cell的标识。
10.根据权利要求8所述的数据传输装置,其特征在于,所述判断模块进一步用于发送查询消息给记录模块,请求记录模块查询是否记录有该Message Cell的标识,并接收记录模块返回的查询结果;如果所述的查询结果指示所述记录模块记录有该Message Cell 的标识,则确定该Message Cell在所述的预定时间后仍然在屏幕上可见。
11.根据权利要求7至10任一项所述的数据传输装置,其特征在于,所述的Message Cell对应的数据为Message Cell对应的消息发表人的头像。
12.根据权利要求11所述的数据传输装置,其特征在于,进一步包括存储模块和显示模块;所述的判断模块进一步用于在判断出所述的Message Cell进入屏幕显示范围时,发送进入通知给所述的显示模块;所述存储模块,用于存储默认头像和所述下载模块下载的头像;所述下载模块,进一步用于当判断模块判断出Message Cell在预定时间后仍然在屏幕上可见时,判断存储模块是否存储有该Message Cell对应的消息发表人的头像,如果有,判断该Message Cell对应的消息发表人的头像的是否已经更新,如果是,则从下载更新的头像,并发送给所述存储模块和所述显示模块;如果存储模块没有存储该Message Cell对应的消息发表人的头像,则下载该Message Cell对应的发表人的头像,并发送给所述存储模块和所述显示模块;所述显示模块,用于在收到判断模块发送的进入通知时,显示存储模块存储的默认头像,当接收到下载模块发送的头像时,显示从下载模块接收到的头像以替代所显示的默认头像。
全文摘要
本发明公开了一种基于滑动检测的数据传输方法,包括当检测到TimeLine在用户终端的屏幕上滚动时,消息客户端记录在屏幕中可见的Message Cell;消息客户端判断该Message Cell在预定时间后是否仍然在屏幕上可见;如果是,从消息服务器下载该Message Cell对应的数据。本发明还公开了一种基于滑动检测的数据传输装置,包括检测模块、记录模块、判断模块和下载模块。利用本发明提供的基于滑动检测的数据传输方法和装置,可以避免下载那些滑动到屏幕中来又快速滑动到屏幕之外的MessageCell对应的数据,从而大幅度的降低用户的网络数据流量,改善用户的体验。
文档编号H04L12/58GK102387091SQ201010272358
公开日2012年3月21日 申请日期2010年8月31日 优先权日2010年8月31日
发明者岳上 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1