一种显示未读消息数量的方法、装置、电子设备及存储介质与流程

文档序号:16997583发布日期:2019-03-02 01:29阅读:144来源:国知局
一种显示未读消息数量的方法、装置、电子设备及存储介质与流程

本申请涉及计算机技术领域,尤其涉及一种显示未读消息数量的方法、装置、电子设备及存储介质。



背景技术:

当前,即时通信(instantmessage,im)技术得到迅速发展,使用即时通信技术可以即时发送和接收互联网消息。目前市面上已存在各类的即时通信客户端,人们可以使用即时通信客户端相互之间收发消息。

如今,越来越多的人们使用即时通信客户端相互交流。一个用户可能接收到多个好友发送的多条消息,当用户查看某一好友的未读消息时,即时通信工具会开启与该好友对应的聊天窗口,在聊天窗口中展示该好友的未读消息,当该好友的未读消息过多时,在聊天中往往无法同时展示该好友的所有未读消息,用户可以往上拉动聊天窗口以查看所有的未读消息。



技术实现要素:

本申请提供一种显示未读消息数量的方法、装置、电子设备及存储介质。

根据本申请的第一方面,提供一种显示未读消息的数量的方法,所述方法包括:

在展示未读消息集合中的消息的过程中,检测展示的消息是否发生变化;

如果展示的消息发生变化,则获取所述未读消息集合中的未展示过的消息的数量;

展示所述未展示过的消息的数量。

在一个可选的实现方式中,所述获取所述未读消息集合中的未展示过的消息的数量,包括:

获取所述未读消息集合中的所有消息的总数量;

获取所述未读消息集合中的已展示过的消息的展示数量;

根据所述总数量和所述展示数量确定所述未展示过的消息的数量。

在一个可选的实现方式中,所述未读消息集合中的消息之间具有先后展示顺序;所述未读消息集合中的每一个消息具备不同的消息编号,展示顺序相邻的消息的消息编号相邻且展示顺序靠后的消息的消息编号小于展示顺序靠前的消息的消息编号;

所述获取所述未读消息集合中的已展示过的消息的展示数量,包括:

在所述未读消息集合中获取当前展示的每一个消息的消息编号;

在获取的消息编号中选择最小的消息编号;

获取所述未读消息集合中的展示顺序为首位的消息的消息编号;

根据所述最小的消息编号和展示顺序为首位的消息的消息编号获取已展示过的消息的展示数量。

在一个可选的实现方式中,所述根据所述最小的消息编号和展示顺序为首位的消息的消息编号获取已展示过的消息的展示数量,包括:

计算展示顺序为首位的消息的消息编号与所述最小的消息编号之间的差值;

计算所述差值与数值1之间的和值,并作为所述已展示过的消息的展示数量。

在一个可选的实现方式中,所述方法还包括:

检测所述未读消息集合中是否添加了新的未展示过的消息;

如果所述未读消息集合中添加了新的未展示过的消息,则执行所述获取所述未读消息集合中的未展示过的消息的数量的步骤。

在一个可选的实现方式中,所述方法还包括:

当所述未读消息集合中的未展示过的消息的数量小于或等于预设数量时,隐藏所述未展示过的消息的数量。

根据本申请的第二方面,提供一种显示未读消息的数量的装置,所述装置包括:

第一检测模块,被配置为在展示未读消息集合中的消息的过程中,检测展示的消息是否发生变化;

获取模块,被配置为当展示的消息发生变化时,获取所述未读消息集合中的未展示过的消息的数量;

展示模块,被配置为展示所述未展示过的消息的数量。

在一个可选的实现方式中,所述获取模块包括:

第一获取单元,被配置为获取所述未读消息集合中的所有消息的总数量;

第二获取单元,被配置为获取所述未读消息集合中的已展示过的消息的展示数量;

确定单元,被配置为根据所述总数量和所述展示数量确定所述未展示过的消息的数量。

在一个可选的实现方式中,所述未读消息集合中的消息之间具有先后展示顺序;所述未读消息集合中的每一个消息具备不同的消息编号,展示顺序相邻的消息的消息编号相邻且展示顺序靠后的消息的消息编号小于展示顺序靠前的消息的消息编号;

所述第二获取单元包括:

第一获取子单元,被配置为在所述未读消息集合中获取当前展示的每一个消息的消息编号;

选择子单元,被配置为在获取的消息编号中选择最小的消息编号;

第二获取子单元,被配置为获取所述未读消息集合中的展示顺序为首位的消息的消息编号;

第三获取子单元,被配置为根据所述最小的消息编号和展示顺序为首位的消息的消息编号获取已展示过的消息的展示数量。

在一个可选的实现方式中,所述第三获取子单元具体被配置为:计算展示顺序为首位的消息的消息编号与所述最小的消息编号之间的差值;计算所述差值与数值1之间的和值,并作为所述已展示过的消息的展示数量。

在一个可选的实现方式中,所述装置还包括:

第二检测模块,被配置为检测所述未读消息集合中是否添加了新的未展示过的消息;

所述获取模块还被配置为:在所述未读消息集合中添加了新的未展示过的消息时,获取所述未读消息集合中的未展示过的消息的数量。

在一个可选的实现方式中,所述装置还包括:

隐藏模块,被配置为当所述未读消息集合中的未展示过的消息的数量小于或等于预设数量时,隐藏所述未展示过的消息的数量。

根据本申请的第三方面,提供一种电子设备,所述电子设备包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行如第一方面所述的显示未读消息的数量的方法。

根据本申请的第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面所述的显示未读消息的数量的方法。

根据本申请的第五方面,提供一种计算机程序产品,当所述计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面所述的显示未读消息的数量的方法。

本申请提供的技术方案可以包括以下有益效果:

在本申请实施例中,在消息展示界面中展示未读消息集合中的消息的过程中,每当在消息展示界面中展示的消息发生变化,获取该未读消息集合中的未展示过的消息的数量;然后展示未展示过的消息的数量,以使用户在阅读该未读消息集合中的消息的过程中,可以实时获知该未读消息集合中的未展示过的消息的数量是多少,进而可以获知还需要继续阅读多少消息,从而可以提高用户的阅读体验。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1是本申请示出的一种显示未读消息的数量的方法的流程图。

图2是本申请示出的一种显示未读消息的数量的装置的框图。

图3是本申请示出的一种电子设备的框图。

图4是本申请示出的一种电子设备的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

图1是本申请示出的一种显示未读消息的数量的方法的流程图,如图1所示,该方法包括以下步骤。

在步骤s101中,在展示未读消息集合中的消息的过程中,检测展示的消息是否发生变化;

在用户关闭即时通讯客户端的情况下,该用户的好友可能会向该用户发送消息,由于该用户的即时通讯客户端未开启,因此,服务器无法向该用户发送该好友发送的消息,此时,服务器可以将该好友向该用户发送的消息存储在一个未读消息集合中,对该用户而言,不同的好友向该用户发送的消息可以存储在不同的未读消息集合中。

之后,当该用户开启即时通讯客户端之后,即时通讯客户端就会建立与服务器之间通信连接,为了使得该用户能够阅读到在即时通讯客户端被关闭的情况下其好友发送的消息,服务器可以向即时通讯客户端发送该未读消息集合。即时通讯客户端接收服务器发送的该未读消息集合。

该未读消息集合为该用户的该好友向该用户发送的历史消息,因此,即时通讯客户端可以在该用户与该好友的之间聊天窗口中的消息展示界面中展示该未读消息集合中的消息,然而,在消息展示界面中往往只能同时展示少量的消息,如果该未读消息集合中包括的消息较多,则无法在消息展示界面中同时展示该未读消息集合中的所有消息,只能同时展示该未读消息集合中的部分消息,当该用户需要查看该未读消息集合中的其它消息时,可以控制即时通讯客户端展示该未读消息集合中的其它消息。例如,用户可以在消息展示界面中输入向下滑动的滑动操作,以使即时通讯客户端在消息展示界面中按照由上至下的顺序不断切换展示该未读消息集合中的消息。

其中,起初该未读消息集合中存储的消息均为未展示过的消息,在消息展示界面中展示了该未读消息集合中的某一消息之后,该消息即为已展示过的消息,也即,该未读消息集合中的未展示过的消息的数量就会减少。

为了在不断切换展示该未读消息集合中的消息的过程中,用户能够实时获知该未读消息集合中的未展示过的消息的数量,在消息展示界面中展示该未读消息集合中的消息的过程中,需要检测在消息展示界面中展示的消息是否发生变化;例如,检测在消息展示界面中是否添加了新的消息,如果添加了新的消息,则确定在消息展示界面中展示的消息是否变化。然后执行步骤s102。

如果展示的消息发生变化,在步骤s102中,获取该未读消息集合中的未展示过的消息的数量;

在一个可选的实现方式中,本步骤可以通过如下流程实现,包括:

1011、获取该未读消息集合中的所有消息的总数量;

1012、获取该未读消息集合中的已展示过的消息的展示数量;

在本申请实施例中,该未读消息集合中的消息之间具有先后展示顺序;其中,该未读消息集合中的消息为服务器接收到的该用户的该好友发送的消息,消息的先后展示顺序包括按照服务器接收到的消息的时间距离由晚至早的顺序等。

其次,该未读消息集合中的每一个消息具备不同的消息编号,例如,服务器接收到的该用户的该好友发送的第一条消息的消息编号为001,接收到该用户的该好友发送第二条消息的消息编号为002,接收到该用户的该好友发送第二条消息的消息编号为003,类此类推等等。

另外,展示顺序相邻的消息的消息编号相邻且展示顺序靠后的消息的消息编号小于展示顺序靠前的消息的消息编号;

因此,在本步骤中,可以在该未读消息集合中获取在消息展示界面中当前展示的每一个消息的消息编号;然后在获取的消息编号中选择最小的消息编号;并获取该未读消息集合中的展示顺序为首位的消息的消息编号;展示顺序为首位的消息的消息编号即为该未读消息集合中的所有消息的消息编号中最大的消息编号,也即,该未读消息集合中的服务器接收到的最新的消息的消息编号,再根据最小的消息编号和展示顺序为首位的消息的消息编号获取已展示过的消息的展示数量。

其中,根据最小的消息编号和展示顺序为首位的消息的消息编号获取已展示过的消息的展示数量,可以计算展示顺序为首位的消息的消息编号与最小的消息编号之间的差值;然后计算差值与数值1之间的和值,并作为已展示过的消息的展示数量。

1013、根据总数量和展示数量确定未展示过的消息的数量。

其中,可以计算该总数量与该展示数量之间的差值,并作为未展示过的消息的数量。

在步骤s103中,展示未展示过的消息的数量。

例如,如果将该未读消息集合中的消息是在消息展示界面中由上至下滚动显示时,则可以在消息展示界面中的上部展示未展示过的消息的数量。

在本申请实施例中,在消息展示界面中展示未读消息集合中的消息的过程中,每当在消息展示界面中展示的消息发生变化,获取该未读消息集合中的未展示过的消息的数量;然后展示未展示过的消息的数量,以使用户在阅读该未读消息集合中的消息的过程中,可以实时获知该未读消息集合中的未展示过的消息的数量是多少,进而可以获知还需要继续阅读多少消息,从而可以提高用户的阅读体验。

在消息展示界面中展示该未读消息集合中的消息的过程中,该用户的该好友可能还需要向该用户发送消息,服务器会接收到该好友发送的消息,并将该好友发送的消息发送给该用户的即时通讯客户端,即时通讯客户端此时由于在消息展示界面中正在展示该未读消息集合中的部分消息,因此无法直接在消息展示界面中展示新接收到该的消息,因此需要将新接收到的该消息作为新的未展示过的消息存储在该未读消息集合中,以供之后展示。

此时在该未读消息集合中的未展示过的消息的数量增加了,因此需要更新展示的未展示过的消息的数量。

在本申请实施例中,即时通讯客户端需要检测该未读消息集合中是否添加了新的未展示过的消息;如果该未读消息集合中添加了新的未展示过的消息,则执行步骤s102:获取未读消息集合中的未展示过的消息的数量,然后执行步骤s103:展示未展示过的消息的数量。

进一步地,在另一实施例中,当该未读消息集合中的未展示过的消息的数量小于或等于预设数量时,可以隐藏未展示过的消息的数量。预设数量可以为0、1或2等较小的数值,本申请实施例对具体的数值不做限定,例如,该未读消息集合中的未展示过的消息的数量为0,此时该未读消息集合中的所有消息均已展示过,从而为了节省系统资源,无需再展示未展示过的消息的数量。

图2是本申请示出的一种显示未读消息的数量的装置的框图。参照图2,该装置包括:

第一检测模块11,被配置为在展示未读消息集合中的消息的过程中,检测展示的消息是否发生变化;

获取模块12,被配置为当展示的消息发生变化时,获取所述未读消息集合中的未展示过的消息的数量;

展示模块13,被配置为展示所述未展示过的消息的数量。

在一个可选的实现方式中,所述获取模块12包括:

第一获取单元,被配置为获取所述未读消息集合中的所有消息的总数量;

第二获取单元,被配置为获取所述未读消息集合中的已展示过的消息的展示数量;

确定单元,被配置为根据所述总数量和所述展示数量确定所述未展示过的消息的数量。

在一个可选的实现方式中,所述未读消息集合中的消息之间具有先后展示顺序;所述未读消息集合中的每一个消息具备不同的消息编号,展示顺序相邻的消息的消息编号相邻且展示顺序靠后的消息的消息编号小于展示顺序靠前的消息的消息编号;

所述第二获取单元包括:

第一获取子单元,被配置为在所述未读消息集合中获取当前展示的每一个消息的消息编号;

选择子单元,被配置为在获取的消息编号中选择最小的消息编号;

第二获取子单元,被配置为获取所述未读消息集合中的展示顺序为首位的消息的消息编号;

第三获取子单元,被配置为根据所述最小的消息编号和展示顺序为首位的消息的消息编号获取已展示过的消息的展示数量。

在一个可选的实现方式中,所述第三获取子单元具体被配置为:计算展示顺序为首位的消息的消息编号与所述最小的消息编号之间的差值;计算所述差值与数值1之间的和值,并作为所述已展示过的消息的展示数量。

在一个可选的实现方式中,所述装置还包括:

第二检测模块,被配置为检测所述未读消息集合中是否添加了新的未展示过的消息;

所述获取模块还被配置为:在所述未读消息集合中添加了新的未展示过的消息时,获取所述未读消息集合中的未展示过的消息的数量。

在一个可选的实现方式中,所述装置还包括:

隐藏模块,被配置为所述当未读消息集合中的未展示过的消息的数量小于或等于预设数量时,隐藏所述未展示过的消息的数量。

在本申请实施例中,在消息展示界面中展示未读消息集合中的消息的过程中,每当在消息展示界面中展示的消息发生变化,获取该未读消息集合中的未展示过的消息的数量;然后展示未展示过的消息的数量,以使用户在阅读该未读消息集合中的消息的过程中,可以实时获知该未读消息集合中的未展示过的消息的数量是多少,进而可以获知还需要继续阅读多少消息,从而可以提高用户的阅读体验。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图3是本申请示出的一种电子设备800的框图。例如,电子设备800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

参照图3,电子设备800可以包括以下一个或多个组件:处理组件802,存储器804,电力组件806,多媒体组件808,音频组件810,输入/输出(i/o)的接口812,传感器组件814,以及通信组件816。

处理组件802通常控制电子设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述如图1所示的显示未读消息的数量的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。

存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在电子设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。

电源组件806为电子设备800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为电子设备800生成、管理和分配电力相关联的组件。

多媒体组件808包括在所述电子设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(mic),当电子设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。

i/o接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件814包括一个或多个传感器,用于为电子设备800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为电子设备800的显示器和小键盘,传感器组件814还可以检测电子设备800或电子设备800一个组件的位置改变,用户与电子设备800接触的存在或不存在,电子设备800方位或加速/减速和电子设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件816被配置为便于电子设备800和其他设备之间有线或无线方式的通信。电子设备800可以接入基于通信标准的无线网络,如wifi,运营商网络(如2g、3g、4g或5g),或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。

在示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述如图1所示的显示未读消息的数量的方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由电子设备800的处理器820执行以完成上述如图1所示的显示未读消息的数量的方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

图4是本申请示出的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器。

参照图4,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述如图1所述的显示未读消息的数量的方法。

电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出(i/o)接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或类似。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。

应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

a1、一种显示未读消息的数量的装置,所述装置包括:

第一检测模块,被配置为在展示未读消息集合中的消息的过程中,检测展示的消息是否发生变化;

获取模块,被配置为当展示的消息发生变化时,获取所述未读消息集合中的未展示过的消息的数量;

展示模块,被配置为展示所述未展示过的消息的数量。

a2、根据a1所述的装置,所述获取模块包括:

第一获取单元,被配置为获取所述未读消息集合中的所有消息的总数量;

第二获取单元,被配置为获取所述未读消息集合中的已展示过的消息的展示数量;

确定单元,被配置为根据所述总数量和所述展示数量确定所述未展示过的消息的数量。

a3、根据a2所述的装置,所述未读消息集合中的消息之间具有先后展示顺序;所述未读消息集合中的每一个消息具备不同的消息编号,展示顺序相邻的消息的消息编号相邻且展示顺序靠后的消息的消息编号小于展示顺序靠前的消息的消息编号;

所述第二获取单元包括:

第一获取子单元,被配置为在所述未读消息集合中获取当前展示的每一个消息的消息编号;

选择子单元,被配置为在获取的消息编号中选择最小的消息编号;

第二获取子单元,被配置为获取所述未读消息集合中的展示顺序为首位的消息的消息编号;

第三获取子单元,被配置为根据所述最小的消息编号和展示顺序为首位的消息的消息编号获取已展示过的消息的展示数量。

a4、根据a3所述的装置,所述第三获取子单元具体被配置为:计算展示顺序为首位的消息的消息编号与所述最小的消息编号之间的差值;计算所述差值与数值1之间的和值,并作为所述已展示过的消息的展示数量。

a5、根据a1所述的装置,所述装置还包括:

第二检测模块,被配置为检测所述未读消息集合中是否添加了新的未展示过的消息;

所述获取模块还被配置为:在所述未读消息集合中添加了新的未展示过的消息时,获取所述未读消息集合中的未展示过的消息的数量。

a6、根据a1所述的装置,所述装置还包括:

隐藏模块,被配置为当所述未读消息集合中的未展示过的消息的数量小于或等于预设数量时,隐藏所述未展示过的消息的数量。

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