一种在移动设备的邮箱客户端中加载新邮件的方法和装置的制造方法
【专利摘要】本发明实施例提供了一种在移动设备的邮箱客户端中加载新邮件的方法和装置,该方法包括:在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量;当所述第一总数量超过预设的数量阈值时,确定第一目标数量;从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件。相比传统的加载方式,邮件遍历的数量从数量阈值降低到第一目标数量,大大减少了邮件遍历的数量,进而提高了邮件客户端加载新邮件的加载速度,减少加载时间,并且,减少流量的耗费。
【专利说明】
一种在移动设备的邮箱客户端中加载新邮件的方法和装置
技术领域
[0001]本发明涉及通信的技术领域,特别是涉及一种在移动设备的邮箱客户端中加载新邮件的方法和一种在移动设备的邮箱客户端中加载新邮件的装置。
【背景技术】
[0002]随着科技的发展,诸如手机、平板电脑等移动设备在人们的工作、学习、日常交流等各方面的使用率也越来越高。
[0003]为了方便进行办公、学习、交流等需求,用户经常在移动设备中安装邮件客户端,与其他用户进行通信。
[0004]当邮箱服务器上邮件数量较多时,邮件客户端加载新邮件的加载速度慢,导致加载时间长,并且,耗费流量多。
【发明内容】
[0005]鉴于上述问题,为了解决上述新邮件的加载速度慢导致加载时间长、耗费流量问题,本发明实施例提出了一种在移动设备的邮箱客户端中加载新邮件的方法和相应的一种在移动设备的邮箱客户端中加载新邮件的装置。
[0006]为了解决上述问题,本发明实施例公开了一种在移动设备的邮箱客户端中加载新邮件的方法,包括:
[0007]在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量;
[0008]当所述第一总数量超过预设的数量阈值时,确定第一目标数量;
[0009]从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件。
[0010]优选地,所述在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量的步骤包括:
[0011]检测邮箱客户端所处操作系统的版本信息和应用的电子邮件协议;
[0012]当所述版本信息为指定的版本且所述电子邮件协议为指定的协议时,获取邮箱服务器中第一邮件的第一总数量。
[0013]优选地,所述确定第一目标数量的步骤包括:
[0014]查询所述邮箱客户端中第二邮件的第二总数量,作为第一目标数量。
[0015]优选地,所述从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件的步骤包括:
[0016]对所述邮箱客户端中的第二邮件与所述邮箱服务器中最新的、所述第一目标数量的第一目标邮件进行匹配;
[0017]当所述第二邮件与所述第一目标邮件匹配时,在所述邮箱客户端中保留所述第二邮件;
[0018]当所述第二邮件与所述第一目标邮件不匹配时,从所述邮箱服务器中下载所述第一目标邮件、在所述邮箱客户端中删除所述第二邮件。
[0019]优选地,所述对所述邮箱客户端中的第二邮件与所述邮箱服务器中最新的、所述第一目标数量的第一目标邮件进行匹配的步骤包括:
[0020]按照所述第一目标数量从所述邮箱服务器请求最新的第一目标邮件的第一标识符;
[0021]查询所述邮箱客户端中第二邮件的第二标识符;
[0022]对所述第二标识符与所述第一标识符进行匹配。
[0023]优选地,所述当所述第二邮件与所述第一目标邮件匹配时,在所述邮箱客户端中保留所述第二邮件的步骤包括:
[0024]当所述第二标识符与所述第一标识符相同时,在所述邮箱客户端中保留所述第二标识符对应的第二邮件;
[0025]所述当所述第二邮件与所述第一目标邮件不匹配时,从所述邮箱服务器下载所述第一目标邮件、在所述邮箱客户端中删除所述第二邮件的步骤包括:
[0026]当所述第二标识符与所述第一标识符不相同时,从所述邮箱服务器下载所述第一标识符对应的第一邮件,在所述邮箱客户端中删除所述第二标识符对应的第二邮件。
[0027]优选地,在所述从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件的步骤之后,所述方法还包括:
[0028]当接收到针对所述第一邮件的加载请求时,确定第二目标数量;
[0029]从所述邮箱服务器的第一邮件中,按照所述第二目标数量下载位于当前第二邮件之前的第二目标邮件。
[0030]优选地,所述从所述邮箱服务器的第一邮件中,按照所述第二目标数量下载位于当前第二邮件之前的第二目标邮件的步骤包括:
[0031 ]按照所述第二目标数量从所述邮箱服务器请求最新的第二目标邮件的第一标识符,所述第二目标邮件位于当前第二邮件之前;
[0032]从所述邮箱服务器中下载所述第一标识符对应的第二目标邮件。
[0033]优选地,还包括:
[0034]当所述邮件的总数量未超过预设的数量阈值时,从所述邮箱服务器中下载与所述邮箱客户端中第二邮件不匹配的第一邮件。
[0035]优选地,所述从所述邮箱服务器中下载与所述邮箱客户端中第二邮件不匹配的第一邮件的步骤包括:
[0036]从所述邮箱服务器请求所有第一邮件的第一标识符;
[0037]查询所述邮箱客户端中所有第二邮件的第二标识符;
[0038]查找与所述第二标识符不匹配的第一标识符;
[0039]从所述邮箱服务器中下载所述第一标识符对应的第一邮件。
[0040]本发明实施例还公开了一种在移动设备的邮箱客户端中加载新邮件的装置,包括:
[0041]服务器邮件数量获取模块,用于在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量;
[0042]第一目标数量确定模块,用于在所述第一总数量超过预设的数量阈值时,确定第一目标数量;
[0043]第一目标邮件下载模块,用于从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件。
[0044]优选地,所述服务器邮件数量获取模块包括:
[0045]邮箱环境检测子模块,用于检测邮箱客户端所处操作系统的版本信息和应用的电子邮件协议;
[0046]第一总数量获取子模块,用于在所述版本信息为指定的版本且所述电子邮件协议为指定的协议时,获取邮箱服务器中第一邮件的第一总数量。
[0047]优选地,所述第一目标数量确定模块包括:
[0048]第二总数量查询子模块,用于查询所述邮箱客户端中第二邮件的第二总数量,作为第一目标数量。
[0049]优选地,所述第一目标邮件下载模块包括:
[0050]邮件匹配子模块,用于对所述邮箱客户端中的第二邮件与所述邮箱服务器中最新的、所述第一目标数量的第一目标邮件进行匹配;
[0051 ]邮件保留子模块,用于在所述第二邮件与所述第一目标邮件匹配时,在所述邮箱客户端中保留所述第二邮件;
[0052]邮件下载子模块,用于在所述第二邮件与所述第一目标邮件不匹配时,从所述邮箱服务器中下载所述第一目标邮件;
[0053]邮件删除子模块,用于在所述第二邮件与所述第一目标邮件不匹配时,在所述邮箱客户端中删除所述第二邮件。
[0054]优选地,所述邮件匹配子模块包括:
[0055]标识符请求单元,用于按照所述第一目标数量从所述邮箱服务器请求最新的第一目标邮件的第一标识符;
[0056]标识符查询单元,用于查询所述邮箱客户端中第二邮件的第二标识符;
[0057]标识符匹配单元,用于对所述第二标识符与所述第一标识符进行匹配。
[0058]优选地,所述邮件保留子模块包括:
[0059]标识符邮件保留单元,用于在所述第二标识符与所述第一标识符相同时,在所述邮箱客户端中保留所述第二标识符对应的第二邮件;
[0060]优选地,所述邮件下载子模块包括:
[0061]标识符邮件下载单元,用于在所述第二标识符与所述第一标识符不相同时,从所述邮箱服务器下载所述第一标识符对应的第一邮件,
[0062]优选地,所述邮件删除子模块包括:
[0063]标识符邮件删除子模块,用于在所述第二标识符与所述第一标识符不相同时,在所述邮箱客户端中删除所述第二标识符对应的第二邮件。
[0064]优选地,还包括:
[0065]差异邮件下载模块,用于在所述邮件的总数量未超过预设的数量阈值时,从所述邮箱服务器中下载与所述邮箱客户端中第二邮件不匹配的第一邮件。
[0066]优选地,所述第二目标邮件下载模块包括:
[0067]第二标识符请求子模块,用于按照所述第二目标数量从所述邮箱服务器请求最新的第二目标邮件的第一标识符,所述第二目标邮件位于当前第二邮件之前;
[0068]目标邮件下载子模块,用于从所述邮箱服务器中下载所述第一标识符对应的第二目标邮件。
[0069]在本发明的一个实施例中,所述差异邮件下载模块406可以包括如下子模块:
[0070]所有标识符请求单元,用于从所述邮箱服务器请求所有第一邮件的第一标识符;
[0071]所有标识符查询单元,用于查询所述邮箱客户端中所有第二邮件的第二标识符;
[0072]标识符查找单元,用于查找与所述第二标识符不匹配的第一标识符;
[0073]服务器邮件下载单元,用于从所述邮箱服务器中下载所述第一标识符对应的第一邮件。
[0074]本发明实施例包括以下优点:
[0075]本发明实施例在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量,若第一总数量超过预设的数量阈值,表示邮箱服务器中邮件的数量较多,则可以确定第一目标数量,并从邮箱服务器的第一邮件中,按照该第一目标数量下载最新的第一目标邮件,相比传统的加载方式,邮件遍历的数量从数量阈值降低到第一目标数量,大大减少了邮件遍历的数量,进而提高了邮件客户端加载新邮件的加载速度,减少加载时间,并且,减少流量的耗费。
【附图说明】
[0076]图1是本发明的一种在移动设备的邮箱客户端中加载新邮件的方法实施例1的步骤流程图;
[0077]图2是本发明的一种在移动设备的邮箱客户端中加载新邮件的方法实施例2的步骤流程图;
[0078]图3是本发明的一种在移动设备的邮箱客户端中加载新邮件的装置实施例1的结构框图;
[0079]图4是本发明的一种在移动设备的邮箱客户端中加载新邮件的装置实施例2的结构框图。
【具体实施方式】
[0080]为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本发明作进一步详细的说明。
[0081]参照图1,示出了本发明的一种在移动设备的邮箱客户端中加载新邮件的方法实施例I的步骤流程图,具体可以包括如下步骤:
[0082]步骤101,在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量;
[0083]在具体实现中,本发明实施例可以应用在移动设备中,例如,手机、平板电脑、个人数字助理、穿戴设备(如眼镜、手表等)等等。
[0084]这些移动设备的操作系统可以包括Android(安卓)、10S、Windows Phone、Windows等等。
[0085]这些操作系统中通常可以支持邮箱客户端的运行,该邮箱客户端与邮箱服务器进行连接,以接收、发送邮件。
[0086]需要说明的是,这些邮箱客户端可以是系统预置的客户端,也可以是第三方的客户端,本发明实施例对此不加以限制。
[0087]当接收到邮件的加载请求时,可以获取邮箱服务器中第一邮件的第一总数量。
[0088]例如,用户可以通过点击接收邮件的控件来加载邮件,当用户点击该控件时,可以触发邮件的加载请求。
[0089]又例如,当启动邮箱客户端时,邮箱客户端可以自动触发邮件的加载请求。
[0090]又例如,每间隔一定的时间,如15分钟,邮箱客户端可以自动触发邮件的加载请求。
[0091]在本发明的一个实施例中,步骤101可以包括如下子步骤:
[0092]子步骤Sll,检测邮箱客户端所处操作系统的版本信息和应用的电子邮件协议;
[0093]子步骤S12,当所述版本信息为指定的版本且所述电子邮件协议为指定的协议时,获取邮箱服务器中第一邮件的第一总数量。
[0094]在实际应用中,在某些版本的操作系统、应用某些电子邮件协议的邮箱客户端,若邮箱服务器的邮件超过一定数量,则遍历所有邮件,与邮箱客户端本地的邮件进行--比对,来判断是否需要加载新的邮件。
[0095]例如,在Android5.0及以上版本,如Andro id5.0、Android5.1、Android6.0、Android7.0等,邮件客户端应用P0P3(Post Office Protocol-Vers1n 3,邮局协议版本
3),可以通过执行POP3协议中的“STAT”指令(请求邮箱服务器发回关于邮箱的统计资料,如邮件总数和总字节数),从邮箱服务器端获取该收件箱Foder (文件夹)下邮件的总数量messagtCountο
[0096]若邮件服务器上的收件箱超过5000封邮件,在传统的加载方式中,邮箱客户端需要通过向服务器发送“UIDL id”指令来遍历所有邮件的UID(—种标识符,会话的每个标识符都将是唯一的),获取响应后与邮箱客户端上的收件箱中的邮件的UID进行一一比对,如果本地没有,则进行加载,如果本地有,则忽略该邮件。
[0097]通过“UIDLid”指令从邮箱服务器获取邮件UID的过程,是把邮箱服务器上所有的邮件都一一遍历,要执行超过5000次,计算数量较多,这是过程耗时较多、耗费流量较多。
[0098]其中,P0P3协议是适用于C/S(Client/Server Structs,客户机和服务器结构)结构的脱机模型的电子邮件协议,支持“离线”邮件处理,其具体过程是:电子邮件发送到邮箱服务器上,邮箱客户端连接服务器,并下载所有未阅读的电子邮件。
[0099]这种离线访问模式是一种存储转发服务,将邮件从邮件服务器端送到终端上。一旦邮件发送到终端上,邮件服务器上的邮件将会被删除。
[0100]但目前的POP3邮件服务器大都可以“只下载邮件,服务器端并不删除”,也就是改进的POP3协议。
[0101]当然,上述操作系统和电子邮件协议只是作为示例,在其他的操作系统和电子邮件协议中,也可能存在同样的问题,例如,SMTP(Simple Mail Transfer Protocol、简单邮件传输协议)、IMAP4(Internet Message Access Protocol 4,交互式数据消息访问协议第四个版本),等等。
[0102]步骤102,当所述第一总数量超过预设的数量阈值时,确定第一目标数量;
[0103]若第一总数量超过预设的数量阈值,则可以应用本发明实施例的加载方式加载新的邮件。
[0104]在此加载方式中,可以确定加载的第一目标数量VisibleLimit。
[0105]在具体实现中,可以查询邮箱客户端中第二邮件的第二总数量,作为第一目标数量。
[0106]在此方式中,邮箱客户端中已下载第二总数量的第二邮件,可以以该第二总数量进行新邮件的加载,保持邮箱客户端中邮件数量的不变,提高用户体验。
[0107]对于POP3协议而言,第二总数量可以为邮箱客户端中收件夹的可见(或下载)的邮件数量。
[0108]当然,上述第一目标数量只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他第一目标数量,例如,指定某个数量(如10、20等)作为第一目标数量,本发明实施例对此不加以限制。另外,除了上述第一目标数量外,本领域技术人员还可以根据实际需要采用其它第一目标数量,本发明实施例对此也不加以限制。
[0109]步骤103,从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件。
[0110]在具体实现中,邮箱客户端可以从邮箱服务器的第一邮件中,按照第一目标数量下载最新(即接收时间最近)的第一目标邮件。
[0111]需要说明的是,第一目标邮件是相对于加载新邮件而言的,其依然为邮箱服务器中存储的第一邮件。
[0112]例如,假设第一目标数量为10,则可以从服务器中下载最新的10封邮件。
[0113]在本发明的一个实施例中,步骤103可以包括如下子步骤:
[0114]子步骤S21,对所述邮箱客户端中的第二邮件与所述邮箱服务器中最新的、所述第一目标数量的第一目标邮件进行匹配;
[0115]在具体实现中,可以按照第一目标数量从邮箱服务器请求最新的第一目标邮件的第一标识符,查询邮箱客户端中第二邮件的第二标识符;
[0116]对第二标识符与第一标识符进行匹配。
[0117]进一步而言,若邮箱客户端应用POP3协议,则可以通过“UIDLid”指令请求最新的第一目标邮件的第一标识符。
[0118]其中,id的起始值Start=messagtCount_Visible Limit + 1,终止值End =messagtCountο
[0119]messagtCount为第一目标数量、Visible Limit为第一目标数量。
[0120]例如,假设邮箱服务器中具有5015封邮件,则可以请求id为5006-5015的邮件的标识符。
[0121]需要说明的是,第一标识符和第二标识符是相对于邮箱服务器和邮箱客户端而言的,其依然为标识符,如UID。
[0122]子步骤S22,当所述第二邮件与所述第一目标邮件匹配时,在所述邮箱客户端中保留所述第二邮件;
[0123]若第二邮件与第一目标邮件匹配,则表示邮箱客户端中存储有最新的、第一目标数量的第一目标邮件,保留该第二邮件,不从邮箱服务器中下载。
[0124]在具体实现中,当第二标识符与第一标识符相同时,表示该第二标识符对应的第二邮件与该第一标识符对应的第一目标邮件匹配,可以在邮箱客户端中保留第二标识符对应的第二邮件。
[0125]子步骤S23,当所述第二邮件与所述第一目标邮件不匹配时,从所述邮箱服务器中下载所述第一目标邮件、在所述邮箱客户端中删除所述第二邮件。
[0126]若第二邮件与第一目标邮件不匹配,存在两种情况:
[0127]一种情况是,不存在与第一目标邮件相同的第二邮件,即邮箱客户端中没有存储最新的、第一目标数量的邮件,可以从邮箱服务器下载该第一目标邮件。
[0128]进一步而言,若邮箱客户端应用POP3协议,则可以通过RETR[Msg#]指令,返回由参数标识的邮件的全部内容。
[0129]在此种情况中,当第二标识符与第一标识符不相同时,表示该第二标识符对应的第二邮件与该第一标识符对应的第一目标邮件不匹配,可以从邮箱服务器下载第一标识符对应的第一邮件。
[0130]另一种情况是,不存在与邮箱客户端的第二邮件相同的第一目标邮件,此种情况下,即邮箱客户端存储的高第二邮件不为最新的、第一目标数量的邮件,可以删除该第二邮件。
[0131]在此种情况中,当第二标识符与第一标识符不相同时,表示该第二标识符对应的第二邮件与该第一标识符对应的第一目标邮件不匹配,可以在邮箱客户端中删除该第二标识符对应的第二邮件。
[0132]本发明实施例在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量,若第一总数量超过预设的数量阈值,表示邮箱服务器中邮件的数量较多,则可以确定第一目标数量,并从邮箱服务器的第一邮件中,按照该第一目标数量下载最新的第一目标邮件,相比传统的加载方式,邮件遍历的数量从数量阈值降低到第一目标数量,大大减少了邮件遍历的数量,进而提高了邮件客户端加载新邮件的加载速度,减少加载时间,并且,减少流量的耗费。
[0133]为使本领域技术人员更好地理解本发明实施例,以下通过具体的示例来说明本发明实施例中新邮件的加载方法。
[0134]假设邮箱服务器端的收件箱有5015封第一邮件,在Android5.0的操作系统中,邮箱客户端应用POP3协议,邮箱客户端的收件箱中有10封第二邮件,其id是5001?5010,即第5001?5010封邮件。
[0135]在加载新邮件时,邮箱服务器端通过“STAT”指令获知邮箱服务器端中收件箱的第一邮件的第一总数量为5015。
[0136]以邮箱客户端中收件箱的第二邮件的第二数量10为第一目标数量,则第一目标邮件为第5006-5015封邮件。
[0137]邮箱客户端通过执行10次“UIDLid”指令从邮箱服务器请求第5006-5015封第一邮件的第一标识符UID。
[0138]这些第一标识符UID与邮箱客户端本地的第二邮件的第二标识符UID进行比对。
[0139]id为5006-5010的邮件的UID相同,则在邮箱客户端中保留这些UID对应的第二邮件。
[0140]id为5001-5005、5011-5015的邮件的UID不相同,则在邮箱客户端中删除id为5001-5005(UID标识)对应的第二邮件,通过RETR[Msg#]指令从邮箱服务器中下载id为5011-5015 (UID标识)对应的第一邮件。
[0141]在邮箱服务器中有超过5000封邮件,采用本发明实施例的加载方式,可以大大提高加载新邮件的速度,加载25封新邮件的平均时间在I分钟以内。
[0142]在一个测试实验中:
[0143]网络环境:平均网速为56KB/s的无线网络;
[0144]测试邮箱:第三方的邮箱客户端,邮箱服务器上有5506封邮件,POP3协议。
[0145]测试设备:基于Android5.0版本的移动设备A:
[0146]CPU 频率:1.4GHz;
[0147]CPU核心数:八核;
[0148]RAM 内存容量:2GB;
[0149]测试结果:在客户端Al采用本发明实施例的加载方式加载新邮件,耗时约5分钟;
[0150]在客户端A2采用传统的加载方式加载新邮件,耗时约15分钟;
[0151]在相同的网络环境测试环境,基于Android5.0版本的移动设备B:
[0152]CPU 频率:2.2GHz;
[0153]CPU核心数:八核;
[0154]RAM 内存容量:3GB;
[0155]测试结果:采用传统的加载方式加载新邮件,耗时约30分钟。
[0156]参照图2,示出了本发明的一种在移动设备的邮箱客户端中加载新邮件的方法实施例2的步骤流程图,具体可以包括如下步骤:
[0157]步骤201,在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量;
[0158]步骤202,当所述第一总数量超过预设的数量阈值时,确定第一目标数量;
[0159]步骤203,从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件;
[0160]步骤204,当接收到针对所述第一邮件的加载请求时,确定第二目标数量;
[0161]步骤205,从所述邮箱服务器的第一邮件中,按照所述第二目标数量下载位于当前第二邮件之前的第二目标邮件;
[0162]在本发明实施例中,如果用户想显示最新邮件之前的邮件,可以通过邮箱客户端提供的“加载更多”控件等方式向邮箱服务器发送加载请求,加载更多的邮件。
[0163]其中,邮箱客户端中当前已下载的第二邮件,可以包括先下载的第一目标邮件,也可以包括在先下载的第二目标邮件,即用户可能触发多次加载更多邮件的操作。
[0164]在加载更多的邮件时,可以确定加载的第二目标数量。
[0165]—般情况下,可以指定某个数量(如10、20等)作为第二目标数量。
[0166]当然,上述第二目标数量只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他第二目标数量,例如,可以查询邮箱客户端中第二邮件的第二总数量,作为第二目标数量,等等,本发明实施例对此不加以限制。
[0167]需要说明的是,第二目标邮件是相对于加载更多的邮件而言的,其依然为邮箱服务器中存储的第一邮件。
[0168]第二目标邮件位于当前第二邮件之前,是指第二目标邮件的接收时间比当前第二邮件的接收时间小,排序在其位置之前。
[0169]当然,第二目标邮件与当前第二邮件的接收时间一般是连续、不间断的。
[0170]在具体实现中,由于第一邮件具有第一标识符,因此,可以按照第二目标数量从邮箱服务器请求最新的第二目标邮件的第一标识符,从邮箱服务器中下载第一标识符对应的第二目标邮件。
[0171]例如,假设邮箱服务器端的收件箱有5015封第一邮件,在Android5.0的操作系统中,邮箱客户端应用POP3协议,邮箱客户端的收件箱中有10封第二邮件,其id是5001?5010,即第5001?5010封邮件。
[0172]邮箱客户端通过本发明实施例的加载方式加载了第5006?5015封邮件。
[0173]若用户点击了“加载更多”控件,指定第二目标数量为15,则可以通过15次“UIDLid”指令从邮箱服务器请求id为4991?5005的邮件的第一标识符UID,即第4991?5005封邮件的第一标识符UID。
[0174]由于邮箱客户端本地一般不会存储有这些第一标识符UID对应的邮件,因此,可以省略与邮箱客户端本地的第二邮件的第二标识符UID进行的比对,直接通过RETR[Msg#]指令从邮箱服务器中下载id为4991?5005(UID标识)对应的第一邮件。
[0175]当然,也可以采用这些第一标识符UID与邮箱客户端本地的第二邮件的第二标识符UID进行比对,再通过RETR[Msg#]指令从邮箱服务器中下载id为4991?5005(UID标识)对应的第一邮件,本发明实施例对此不加以限制。
[0176]步骤206,当所述邮件的总数量未超过预设的数量阈值时,从所述邮箱服务器中下载与所述邮箱客户端中第二邮件不匹配的第一邮件。
[0177]若邮件的总数量未超过预设的数量阈值,数量较少,可以下载邮箱客户端所没有的第一邮件,使得邮箱客户端与邮箱服务器的邮件同步。
[0178]由于第一邮件具有第一标识符、第二邮件具有第二标识符,因此,可以从邮箱服务器请求所有第一邮件的第一标识符,查询邮箱客户端中所有第二邮件的第二标识符。
[0179]查找与第二标识符不匹配的第一标识符,从邮箱服务器中下载第一标识符对应的第一邮件。
[0180]需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0181]参照图3,示出了本发明的一种在移动设备的邮箱客户端中加载新邮件的装置实施例I的结构框图,具体可以包括如下模块:
[0182]服务器邮件数量获取模块301,用于在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量;
[0183]第一目标数量确定模块302,用于在所述第一总数量超过预设的数量阈值时,确定第一目标数量;
[0184]第一目标邮件下载模块303,用于从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件。
[0185]在本发明的一个实施例中,所述服务器邮件数量获取模块301可以包括如下子模块:
[0186]邮箱环境检测子模块,用于检测邮箱客户端所处操作系统的版本信息和应用的电子邮件协议;
[0187]第一总数量获取子模块,用于在所述版本信息为指定的版本且所述电子邮件协议为指定的协议时,获取邮箱服务器中第一邮件的第一总数量。
[0188]在本发明的一个实施例中,所述第一目标数量确定模块302可以包括如下子模块:
[0189]第二总数量查询子模块,用于查询所述邮箱客户端中第二邮件的第二总数量,作为第一目标数量。
[0190]在本发明的一个实施例中,所述第一目标邮件下载模块303可以包括如下子模块:
[0191]邮件匹配子模块,用于对所述邮箱客户端中的第二邮件与所述邮箱服务器中最新的、所述第一目标数量的第一目标邮件进行匹配;
[0192]邮件保留子模块,用于在所述第二邮件与所述第一目标邮件匹配时,在所述邮箱客户端中保留所述第二邮件;
[0193]邮件下载子模块,用于在所述第二邮件与所述第一目标邮件不匹配时,从所述邮箱服务器中下载所述第一目标邮件;
[0194]邮件删除子模块,用于在所述第二邮件与所述第一目标邮件不匹配时,在所述邮箱客户端中删除所述第二邮件。
[0195]在本发明的一个实施例中,所述邮件匹配子模块可以包括如下单元:
[0196]标识符请求单元,用于按照所述第一目标数量从所述邮箱服务器请求最新的第一目标邮件的第一标识符;
[0197]标识符查询单元,用于查询所述邮箱客户端中第二邮件的第二标识符;
[0198]标识符匹配单元,用于对所述第二标识符与所述第一标识符进行匹配。
[0199]在本发明的一个实施例中,所述邮件保留子模块可以包括如下单元:
[0200]标识符邮件保留单元,用于在所述第二标识符与所述第一标识符相同时,在所述邮箱客户端中保留所述第二标识符对应的第二邮件;
[0201]在本发明的一个实施例中,所述邮件下载子模块可以包括如下单元:
[0202]标识符邮件下载单元,用于在所述第二标识符与所述第一标识符不相同时,从所述邮箱服务器下载所述第一标识符对应的第一邮件,
[0203]在本发明的一个实施例中,所述邮件删除子模块可以包括如下单元:
[0204]标识符邮件删除子模块,用于在所述第二标识符与所述第一标识符不相同时,在所述邮箱客户端中删除所述第二标识符对应的第二邮件。
[0205]参照图4,示出了本发明的一种在移动设备的邮箱客户端中加载新邮件的装置实施例2的结构框图,具体可以包括如下模块:
[0206]服务器邮件数量获取模块401,用于在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量;
[0207]第一目标数量确定模块402,用于在所述第一总数量超过预设的数量阈值时,确定第一目标数量;
[0208]第一目标邮件下载模块403,用于从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件;
[0209]第二目标数量确定模块404,用于在接收到针对所述第一邮件的加载请求时,确定第二目标数量;
[0210]第二目标邮件下载模块405,用于从所述邮箱服务器的第一邮件中,按照所述第二目标数量下载位于当前第二邮件之前的第二目标邮件;
[0211 ]差异邮件下载模块406,用于在所述邮件的总数量未超过预设的数量阈值时,从所述邮箱服务器中下载与所述邮箱客户端中第二邮件不匹配的第一邮件。
[0212]在本发明的一个实施例中,所述第二目标邮件下载模块405可以包括如下子模块:
[0213]第二标识符请求子模块,用于按照所述第二目标数量从所述邮箱服务器请求最新的第二目标邮件的第一标识符,所述第二目标邮件位于当前第二邮件之前;
[0214]目标邮件下载子模块,用于从所述邮箱服务器中下载所述第一标识符对应的第二目标邮件。
[0215]在本发明的一个实施例中,所述差异邮件下载模块406可以包括如下子模块:
[0216]所有标识符请求单元,用于从所述邮箱服务器请求所有第一邮件的第一标识符;
[0217]所有标识符查询单元,用于查询所述邮箱客户端中所有第二邮件的第二标识符;
[0218]标识符查找单元,用于查找与所述第二标识符不匹配的第一标识符;
[0219]服务器邮件下载单元,用于从所述邮箱服务器中下载所述第一标识符对应的第一邮件。
[0220]对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0221]本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0222]本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0223]本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0224]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0225]这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0226]尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
[0227]最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
[0228]以上对本发明所提供的一种在移动设备的邮箱客户端中加载新邮件的方法和一种在移动设备的邮箱客户端中加载新邮件的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【主权项】
1.一种在移动设备的邮箱客户端中加载新邮件的方法,其特征在于,包括: 在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量; 当所述第一总数量超过预设的数量阈值时,确定第一目标数量; 从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件。2.根据权利要求1所述的方法,其特征在于,所述在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量的步骤包括: 检测邮箱客户端所处操作系统的版本信息和应用的电子邮件协议; 当所述版本信息为指定的版本且所述电子邮件协议为指定的协议时,获取邮箱服务器中第一邮件的第一总数量。3.根据权利要求1所述的方法,其特征在于,所述确定第一目标数量的步骤包括: 查询所述邮箱客户端中第二邮件的第二总数量,作为第一目标数量。4.根据权利要求1或2或3所述的方法,其特征在于,所述从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件的步骤包括: 对所述邮箱客户端中的第二邮件与所述邮箱服务器中最新的、所述第一目标数量的第一目标邮件进行匹配; 当所述第二邮件与所述第一目标邮件匹配时,在所述邮箱客户端中保留所述第二邮件; 当所述第二邮件与所述第一目标邮件不匹配时,从所述邮箱服务器中下载所述第一目标邮件、在所述邮箱客户端中删除所述第二邮件。5.根据权利要求4所述的方法,其特征在于,所述对所述邮箱客户端中的第二邮件与所述邮箱服务器中最新的、所述第一目标数量的第一目标邮件进行匹配的步骤包括: 按照所述第一目标数量从所述邮箱服务器请求最新的第一目标邮件的第一标识符; 查询所述邮箱客户端中第二邮件的第二标识符; 对所述第二标识符与所述第一标识符进行匹配。6.根据权利要求5所述的方法,其特征在于, 所述当所述第二邮件与所述第一目标邮件匹配时,在所述邮箱客户端中保留所述第二邮件的步骤包括: 当所述第二标识符与所述第一标识符相同时,在所述邮箱客户端中保留所述第二标识符对应的第二邮件; 所述当所述第二邮件与所述第一目标邮件不匹配时,从所述邮箱服务器下载所述第一目标邮件、在所述邮箱客户端中删除所述第二邮件的步骤包括: 当所述第二标识符与所述第一标识符不相同时,从所述邮箱服务器下载所述第一标识符对应的第一邮件,在所述邮箱客户端中删除所述第二标识符对应的第二邮件。7.根据权利要求1或2或3或5或6所述的方法,其特征在于,在所述从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件的步骤之后,所述方法还包括: 当接收到针对所述第一邮件的加载请求时,确定第二目标数量; 从所述邮箱服务器的第一邮件中,按照所述第二目标数量下载位于当前第二邮件之前的第二目标邮件。8.根据权利要求7所述的方法,其特征在于,所述从所述邮箱服务器的第一邮件中,按照所述第二目标数量下载位于当前第二邮件之前的第二目标邮件的步骤包括: 按照所述第二目标数量从所述邮箱服务器请求最新的第二目标邮件的第一标识符,所述第二目标邮件位于当前第二邮件之前; 从所述邮箱服务器中下载所述第一标识符对应的第二目标邮件。9.根据权利要求1或2或3或5或6或8所述的方法,其特征在于,还包括: 当所述邮件的总数量未超过预设的数量阈值时,从所述邮箱服务器中下载与所述邮箱客户端中第二邮件不匹配的第一邮件。10.根据权利要求9所述的方法,其特征在于,所述从所述邮箱服务器中下载与所述邮箱客户端中第二邮件不匹配的第一邮件的步骤包括: 从所述邮箱服务器请求所有第一邮件的第一标识符; 查询所述邮箱客户端中所有第二邮件的第二标识符; 查找与所述第二标识符不匹配的第一标识符; 从所述邮箱服务器中下载所述第一标识符对应的第一邮件。11.一种在移动设备的邮箱客户端中加载新邮件的装置,其特征在于,包括: 服务器邮件数量获取模块,用于在邮箱客户端中获取邮箱服务器中第一邮件的第一总数量; 第一目标数量确定模块,用于在所述第一总数量超过预设的数量阈值时,确定第一目标数量; 第一目标邮件下载模块,用于从所述邮箱服务器的第一邮件中,按照所述第一目标数量下载最新的第一目标邮件。
【文档编号】H04L12/58GK105897560SQ201610355285
【公开日】2016年8月24日
【申请日】2016年5月25日
【发明人】宋亮
【申请人】青岛海信移动通信技术股份有限公司