推送消息的方法、移动终端和存储介质与流程

文档序号:11206513阅读:664来源:国知局
本发明涉及通讯领域,尤其涉及一种推送消息的方法、移动终端和存储介质。
背景技术
::在推送系统中,为了实现对功耗的优化,各应用软件对应服务器的接口与推送进行带宽共享。各个应用软件对应服务器的接口会首先与推送服务器进行交互,获取此时需要推送的消息,以减少推送通道使用的次数。由于增加了与推送服务器的对接,应用软件的接口性能降低。当推送服务器针对该应用软件一次推送的消息较多时,由于接口所附加的数据增多,会导致该应用软件出现一定程度的卡顿,系统性能受到影响,用户体验较低。技术实现要素:本发明的主要目的在于提出一种推送消息的方法、移动终端和存储介质,旨在解决现有技术的如下问题:当推送服务器针对某一应用软件一次推送的消息较多时,由于接口所附加的数据增多,会导致该应用软件出现一定程度的卡顿,系统性能受到影响,用户体验较低。为实现上述目的,本发明提供的一种推送消息的方法,包括:通过预设推送接口向推送服务器发送消息获取请求,其中,所述消息获取请求中携带有多个预定应用软件的id信息;接收所述推送服务器根据多个所述预定应用软件的id信息发送的消息集;根据所述预定应用软件的id信息将所述消息集中的消息发送至所述预定应用软件。可选的,通过预设推送接口向推送服务器发送消息获取请求,包括:获取各个应用软件在预定时间段内的使用次数;按照第一预定时间间隔向推送服务器发送使用次数大于预定次数的应用软件的消息获取请求,按照第二预定时间间隔向推送服务器发送使用次数小于或等于所述预定次数的应用软件的消息获取请求,其中,所述第一预定时间间隔小于所述第二预定时间间隔。可选的,根据所述预定应用软件的id信息将所述消息集中的消息发送至所述预定应用软件,包括:对所述消息集进行解析,以确定每个消息对应的所述预定应用软件的id信息;根据所述预定应用软件的id信息将消息发送至对应的预定应用软件。可选的,根据所述预定应用软件的id信息将所述消息集中的消息发送至所述预定应用软件,包括:将各个应用软件在所述预定时间段内的使用次数由多到少进行排序:按照所述排序结果确定发送消息的所述预定应用软件的id信息的次序;按照所述次序依次将消息发送至预定应用软件。可选的,所述方法还包括:在所述推送服务器确定待推送的消息的推送级别是预设推送级别的情况下,预定应用软件的应用软件接口通过推送通道接收来自所述推送服务器的所述消息。可选的,所述消息获取请求中携带的所述多个预定应用软件的id信息按照列表形式呈现。此外,为实现上述目的,本发明还提出一种移动终端,包括处理器、存储器及通信总线;所述通信总线用于实现处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的推送消息的程序,以实现以下步骤:通过预设推送接口向推送服务器发送消息获取请求,其中,所述消息获取请求中携带有多个预定应用软件的id信息;接收所述推送服务器根据多个所述预定应用软件的id信息发送的消息集;根据所述预定应用软件的id信息将所述消息集中的消息发送至所述预定应用软件。可选的,在所述处理器在执行通过预设推送接口向推送服务器发送消息获取请求的步骤时,具体实现如下步骤:获取各个应用软件在预定时间段内的使用次数;按照第一预定时间间隔向推送服务器发送使用次数大于预定次数的应用软件的消息获取请求,按照第二预定时间间隔向推送服务器发送使用次数小于或等于所述预定次数的应用软件的消息获取请求,其中,所述第一预定时间间隔小于所述第二预定时间间隔。可选的,所述处理器在执行根据所述预定应用软件的id信息将所述消息集中的消息发送至所述预定应用软件的步骤时,具体实现如下步骤:对所述消息集进行解析,以确定每个消息对应的所述预定应用软件的id信息;根据所述预定应用软件的id信息将消息发送至对应的预定应用软件。此外,为实现上述目的,本发明还提出一种存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述推送消息的方法的步骤。本发明通过预设推送接口与推送服务器连接,通过主动获取待推送消息的方式来减少推送通道的使用,再通过预设推送接口将消息分发至各个预定应用软件,应用软件不需要通过自己对外接口与推送服务器交互,即使需要推送的消息再多,也不会造成应用软件的系统卡顿,系统性能大大提高,解决了现有技术的如下问题:当推送服务器针对某一应用一次推送的消息较多时,由于接口所附加的数据增多,会导致该应用出现一定程度的卡顿,系统性能受到影响,用户体验较低。附图说明图1为实现本发明各个实施例可选的一种移动终端的硬件结构示意图;图2为如图1所示的移动终端的通信网络系统架构图;图3为本发明第一实施例推送消息的方法的流程图;图4为本发明第二实施例推送消息的方法的流程图;图5为本发明第五实施例推送消息的方法的流程图;图6为本发明第五实施例推送消息的方法的辅助流程图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(personaldigitalassistant,pda)、便捷式媒体播放器(portablemediaplayer,pmp)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字tv、台式计算机等固定终端。后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。请参阅图1,其为实现本发明各个实施例的一种移动终端的硬件结构示意图,该移动终端100可以包括:rf(radiofrequency,射频)单元101、wifi模块102、音频输出单元103、a/v(音频/视频)输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图1中示出的移动终端结构并不构成对移动终端的限定,移动终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。下面结合图1对移动终端的各个部件进行具体的介绍:射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将基站的下行信息接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于gsm(globalsystemofmobilecommunication,全球移动通讯系统)、gprs(generalpacketradioservice,通用分组无线服务)、cdma2000(codedivisionmultipleaccess2000,码分多址2000)、wcdma(widebandcodedivisionmultipleaccess,宽带码分多址)、td-scdma(timedivision-synchronouscodedivisionmultipleaccess,时分同步码分多址)、fdd-lte(frequencydivisionduplexing-longtermevolution,频分双工长期演进)和tdd-lte(timedivisionduplexing-longtermevolution,分时双工长期演进)等。wifi属于短距离无线传输技术,移动终端通过wifi模块102可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了wifi模块102,但是可以理解的是,其并不属于移动终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。音频输出单元103可以在移动终端100处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将射频单元101或wifi模块102接收的或者在存储器109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元103还可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元103可以包括扬声器、蜂鸣器等等。a/v输入单元104用于接收音频或视频信号。a/v输入单元104可以包括图形处理器(graphicsprocessingunit,gpu)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元106上。经图形处理器1041处理后的图像帧可以存储在存储器109(或其它存储介质)中或者经由射频单元101或wifi模块102进行发送。麦克风1042可以在电话通话模式、记录模式、语音识别模式等等运行模式中经由麦克风1042接收声音(音频数据),并且能够将这样的声音处理为音频数据。处理后的音频(语音)数据可以在电话通话模式的情况下转换为可经由射频单元101发送到移动通信基站的格式输出。麦克风1042可以实施各种类型的噪声消除(或抑制)算法以消除(或抑制)在接收和发送音频信号的过程中产生的噪声或者干扰。移动终端100还包括至少一种传感器105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感器可在移动终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板1061。用户输入单元107可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107可包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1071上或在触控面板1071附近的操作),并根据预先设定的程式驱动相应的连接装置。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,并能接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种,具体此处不做限定。进一步的,触控面板1071可覆盖显示面板1061,当触控面板1071检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图1中,触控面板1071与显示面板1061是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现移动终端的输入和输出功能,具体此处不做限定。接口单元108用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(i/o)端口、视频i/o端口、耳机端口等等。接口单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端100和外部装置之间传输数据。存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。处理器110是移动终端的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块,以及调用存储在存储器109内的数据,执行移动终端的各种功能和处理数据,从而对移动终端进行整体监控。处理器110可包括一个或多个处理单元;优选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。移动终端100还可以包括给各个部件供电的电源111(比如电池),优选的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。尽管图1未示出,移动终端100还可以包括蓝牙模块等,在此不再赘述。为了便于理解本发明实施例,下面对本发明的移动终端所基于的通信网络系统进行描述。请参阅图2,图2为本发明实施例提供的一种通信网络系统架构图,该通信网络系统为通用移动通信技术的lte系统,该lte系统包括依次通讯连接的ue(userequipment,用户设备)201,e-utran(evolvedumtsterrestrialradioaccessnetwork,演进式umts陆地无线接入网)202,epc(evolvedpacketcore,演进式分组核心网)203和运营商的ip业务204。具体地,ue201可以是上述终端100,此处不再赘述。e-utran202包括enodeb2021和其它enodeb2022等。其中,enodeb2021可以通过回程(backhaul)(例如x2接口)与其它enodeb2022连接,enodeb2021连接到epc203,enodeb2021可以提供ue201到epc203的接入。epc203可以包括mme(mobilitymanagemententity,移动性管理实体)2031,hss(homesubscriberserver,归属用户服务器)2032,其它mme2033,sgw(servinggateway,服务网关)2034,pgw(pdngateway,分组数据网络网关)2035和pcrf(policyandchargingrulesfunction,政策和资费功能实体)2036等。其中,mme2031是处理ue201和epc203之间信令的控制节点,提供承载和连接管理。hss2032用于提供一些寄存器来管理诸如归属位置寄存器(图中未示)之类的功能,并且保存有一些有关服务特征、数据速率等用户专用的信息。所有用户数据都可以通过sgw2034进行发送,pgw2035可以提供ue201的ip地址分配以及其它功能,pcrf2036是业务数据流和ip承载资源的策略与计费控制策略决策点,它为策略与计费执行功能单元(图中未示)选择及提供可用的策略和计费控制决策。ip业务204可以包括因特网、内联网、ims(ipmultimediasubsystem,ip多媒体子系统)或其它ip业务等。虽然上述以lte系统为例进行了介绍,但本领域技术人员应当知晓,本发明不仅仅适用于lte系统,也可以适用于其他无线通信系统,例如gsm、cdma2000、wcdma、td-scdma以及未来新的网络系统等,此处不做限定。基于上述移动终端硬件结构以及通信网络系统,提出本发明方法各个实施例。本发明第一实施例提供了一种推送消息的方法,该方法的流程如图3所示,包括步骤s302至s306:s302,通过预设推送接口向推送服务器发送消息获取请求,其中,消息获取请求中携带有多个预定应用软件的id信息。在现有技术中,终端系统内的各个应用软件都设置了一个接口,使用该接口与推送服务器通信,进而获取需要推送的消息,并将需要推送的消息呈现在终端上。然而,各应用软件对应服务器的接口与推送进行带宽共享。各个应用软件对应服务器的接口会首先与推送服务器进行交互,获取此时需要推送的消息,以减少推送通道使用的次数。由于应用软件的接口不仅只与推送服务器交互,还需要执行应用软件正常的对外数据交互,因此,增加了与推送服务器的对接,应用软件的接口性能降低了。为了解决上述问题,本实施例专门在系统后台设置了一个预设推送接口,该预设推送接口与各个应用软件和推送服务器均进行交互,作为各个应用软件与推送服务器的中介,由该预设推送接口来向推送服务器发送消息获取请求,以请求由该接口统一得到各个应用需要推送的消息。实现的过程中,预设推送接口发送的消息获取请求中需要携带多个预定应用软件的id信息,这样,推送服务器才可以通过id信息来确定将哪些预定应用软件的消息发至预设推送接口。在实际操作时,多个预定应用软件的id信息可以以列表形式呈现。s304,接收推送服务器根据多个预定应用软件的id信息发送的消息集。由于消息获取请求是针对多个预定应用软件的,因此,推送服务器返回的也是针对多个预定应用软件的,即预设推送接口接收到的消息是一个消息集形式存在的,这样,预设推送接口就可以一次性通过推送通道得到很多待推送的消息,减少了推送通道的占用。s306,根据预定应用软件的id信息将消息集中的消息发送至预定应用软件。在预设推送接口接收到消息集后,就可以按照每个消息中携带的预定应用软件的id信息来判断其需要发送至的应用软件,这样,各个应用软件就可以接收到待推送的消息,进而呈现给用户。在根据预定应用软件的id信息将消息集中的消息发送至预定应用软件时,具体包括:对消息集进行解析,以确定每个消息对应的预定应用软件的id信息;根据预定应用软件的id信息将消息发送至对应的预定应用软件。本实施例通过预设推送接口与推送服务器连接,通过主动获取待推送消息的方式来减少推送通道的使用,再通过预设推送接口将消息分发至各个预定应用软件,应用软件不需要通过自己对外接口与推送服务器交互,即使需要推送的消息再多,也不会造成应用软件的系统卡顿,系统性能大大提高,解决了现有技术的如下问题:当推送服务器针对某一应用一次推送的消息较多时,由于接口所附加的数据增多,会导致该应用出现一定程度的卡顿,系统性能受到影响,用户体验较低。在发送消息获取请求的过程中,可以是按照预定的时间间隔来发送,针对不同的应用软件,也可以设置不同的时间间隔,例如,将应用分为两类,一类是经常使用的,一类是不经常使用的,则通过预设推送接口向推送服务器发送消息获取请求时,还可以具体包括如下过程:获取各个应用软件在预定时间段内的使用次数;按照第一预定时间间隔向推送服务器发送使用次数大于预定次数的应用软件的消息获取请求,按照第二预定时间间隔向推送服务器发送使用次数小于或等于预定次数的应用软件的消息获取请求,其中,第一预定时间间隔小于第二预定时间间隔。在上述过程中,将不同的应用软件进行的不同的分类,每类应用软件就可以按照不同的时间来获取待推送消息。在根据预定应用软件的id信息将消息集中的消息发送至预定应用软件时,具体可以将各个应用软件在预定时间段内的使用次数由多到少进行排序,再按照排序结果确定发送消息的预定应用软件的id信息的次序,最后按照次序依次将消息发送至预定应用软件。实现的过程中,对一些急需推送的消息,在推送服务器确定待推送的消息的推送级别是预设推送级别的情况下,预定应用软件的应用软件接口直接通过推送通道接收来自推送服务器的消息,以避免耽误该消息的时效性。例如,终端系统中存在8个应用软件,即墨迹天气、美团、百度外卖、大众点评、美图秀秀、酷我音乐、网易云音乐和淘宝网;预定时间段设置为每天时,则在24小时内统计上述8个应用软件各自的使用次数,例如淘宝网、大众点评和网易云音乐的使用次数超过预定的5次,但墨迹天气、美团、百度外卖、美图秀秀和酷我音乐的使用次数没有超过预定的5次,则淘宝网、大众点评和网易云音乐为第一类应用软件,其推送的消息价值较大,则采用第一预定时间间隔向推送服务器发送消息获取请求,墨迹天气、美团、百度外卖、美图秀秀和酷我音乐为第二类应用软件,其采用第二预定时间间隔向推送服务器发送消息获取请求。通过上述方法,就可以做到合理的获取和推送消息。本发明第二实施例提供了一种推送消息的方法,该方法实施在推送服务器侧,其流程如图4所示,包括步骤s402至s406:s402,推送服务器接收来自预设推送接口的消息获取请求,其中,消息获取请求中携带有多个预定应用软件的id信息。在现有技术中,终端系统内的各个应用软件都设置了一个接口,使用该接口与推送服务器通信,进而获取需要推送的消息,并将需要推送的消息呈现在终端上。然而,各应用软件对应服务器的接口与推送进行带宽共享。各个应用软件对应服务器的接口会首先与推送服务器进行交互,获取此时需要推送的消息,以减少推送通道使用的次数。由于应用软件的接口不仅只与推送服务器交互,还需要执行应用软件正常的对外数据交互,因此,增加了与推送服务器的对接,应用软件的接口性能降低了。为了解决上述问题,本发明实施例专门在系统后台设置了一个预设推送接口,该预设推送接口与各个应用软件和推送服务器均进行交互,作为各个应用软件与推送服务器的中介,由该预设推送接口来向推送服务器发送消息获取请求,以请求由该接口统一得到各个应用需要推送的消息。实现的过程中,预设推送接口发送的消息获取请求中需要携带多个预定应用软件的id信息,这样,推送服务器才可以通过id信息来确定将哪些预定应用软件的消息发至预设推送接口。在实际操作时,多个预定应用软件的id信息可以以列表形式呈现。在接收到预设推送接口发送的消息获取请求时,可以是按照预定的时间间隔来接收到的。针对不同的应用软件,预设推送接口预定的时间间隔也可以设置为不同,例如,将应用分为两类,一类是经常使用的,一类是不经常使用的,则通过预设推送接口向推送服务器发送消息获取请求时,还可以具体包括如下过程:获取各个应用软件在预定时间段内的使用次数;按照第一预定时间间隔向推送服务器发送使用次数大于预定次数的应用软件的消息获取请求,按照第二预定时间间隔向推送服务器发送使用次数小于或等于预定次数的应用软件的消息获取请求,其中,第一预定时间间隔小于第二预定时间间隔。在上述过程中,将不同的应用软件进行的不同的分类,每类应用软件就可以按照不同的时间来获取待推送消息。例如,终端系统中存在8个应用软件,即墨迹天气、美团、百度外卖、大众点评、美图秀秀、酷我音乐、网易云音乐和淘宝网;预定时间段设置为每天时,则在24小时内统计上述8个应用软件各自的使用次数,例如淘宝网、大众点评和网易云音乐的使用次数超过预定的8次,但墨迹天气、美团、百度外卖、美图秀秀和酷我音乐的使用次数没有超过预定的8次,则淘宝网、大众点评和网易云音乐为第一类应用软件,其推送的消息价值较大,则采用第一预定时间间隔向推送服务器发送消息获取请求,墨迹天气、美团、百度外卖、美图秀秀和酷我音乐为第二类应用软件,其采用第二预定时间间隔向推送服务器发送消息获取请求。通过上述方法,就可以做到合理的获取和推送消息。s404,推送服务器根据多个预定应用软件的id信息确定待推送的消息集。由于消息获取请求是针对多个预定应用软件的,因此,推送服务器返回的也是针对多个预定应用软件的,即预设推送接口接收到的消息是一个消息集形式存在的,这样,预设推送接口就可以一次性通过推送通道得到很多待推送的消息,减少了推送通道的占用。s406,推送服务器将消息集通过推送通道发送至预设推送接口。推送服务器在通过推送通道发送推送消息时,由于是仅针对一个预设推送接口,不涉及到其他推送接口,因此,减少的推送通道的使用次数,减少了终端系统的带宽占用。在预设推送接口接收到消息集后,就可以按照每个消息中携带的预定应用软件的id信息来判断其需要发送至的应用软件,这样,各个应用软件就可以接收到待推送的消息,进而呈现给用户。在实现过程中,由于设置了预设推送接口,因此,推送服务器可以通过该预设推送接口来向各个应用软件来传递需要推送的消息,但是,一些时效性较强的消息是需要及时推送的,因此,可以对时效性较强的消息或者比较重要的消息进行标记,以突出其推送级别存在的差异。在对消息进行区别后,则上述方法还可以包括如下过程:推送服务器接收待推送的消息,并判断消息的推送级别是否为预设推送级别;在推送级别是预设推送级别的情况下,通过推送通道发送消息至消息对应的预定应用软件的应用软件接口;在推送级别不是预设推送级别的情况下,将接收到消息添加到本地存储的消息群中,以通过预设推送接口转发消息。例如,推送服务器可推送的应用软件有7个,即墨迹天气、美团、百度外卖、大众点评、美图秀秀、网易云音乐和淘宝网,在推送服务器接收到待推送给应用软件的消息时,先检测该消息是否存在固定标识。如果存在固定标识,则确认为是预设推送级别的消息,则通过推送通道发送消息至消息对应的应用软件的应用软件接口。当推送服务器检测到墨迹天气对应消息含有固定标识时,则直接将该消息通过推送通道发送至墨迹天气对应的接口;当推送服务器检测到淘宝网对应消息含有固定标识时,则直接将该消息通过推送通道发送至淘宝网对应的接口;当推送服务器检测到淘宝网对应的另一消息不含有固定标识时,将接收到消息添加到本地存储的消息群中,以通过预设推送接口转发消息;当推送服务器检测到网易云音乐对应的消息不含有固定标识时,将接收到消息添加到本地存储的消息群中,以通过预设推送接口转发消息。通过上述方法,可以将不同推送级别的消息按照不同的方式进行推送,在保证了推送消息具有时效性的前提下,又保证了对终端系统和应用软件的资源占用率最低,提升了系统性能。本实施例通过预设推送接口与推送服务器连接,通过主动获取待推送消息的方式来减少推送通道的使用,再通过预设推送接口将消息分发至各个预定应用软件,应用软件不需要通过自己对外接口与推送服务器交互,即使需要推送的消息再多,也不会造成应用软件的系统卡顿,系统性能大大提高,解决了现有技术的如下问题:当推送服务器针对某一应用一次推送的消息较多时,由于接口所附加的数据增多,会导致该应用出现一定程度的卡顿,系统性能受到影响,用户体验较低。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。本发明第三实施例提供了一种存储介质,存储有计算机程序,该存储介质可以以存储器形式存在于移动终端中。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:s11,通过预设推送接口向推送服务器发送消息获取请求,其中,消息获取请求中携带有多个预定应用软件的id信息。在现有技术中,终端系统内的各个应用软件都设置了一个接口,使用该接口与推送服务器通信,进而获取需要推送的消息,并将需要推送的消息呈现在终端上。然而,各应用软件对应服务器的接口与推送进行带宽共享。各个应用软件对应服务器的接口会首先与推送服务器进行交互,获取此时需要推送的消息,以减少推送通道使用的次数。由于应用软件的接口不仅只与推送服务器交互,还需要执行应用软件正常的对外数据交互,因此,增加了与推送服务器的对接,应用软件的接口性能降低了。为了解决上述问题,本实施例专门在系统后台设置了一个预设推送接口,该预设推送接口与各个应用软件和推送服务器均进行交互,作为各个应用软件与推送服务器的中介,由该预设推送接口来向推送服务器发送消息获取请求,以请求由该接口统一得到各个应用需要推送的消息。实现的过程中,预设推送接口发送的消息获取请求中需要携带多个预定应用软件的id信息,这样,推送服务器才可以通过id信息来确定将哪些预定应用软件的消息发至预设推送接口。在实际操作时,多个预定应用软件的id信息可以以列表形式呈现。s12,接收推送服务器根据多个预定应用软件的id信息发送的消息集。由于消息获取请求是针对多个预定应用软件的,因此,推送服务器返回的也是针对多个预定应用软件的,即预设推送接口接收到的消息是一个消息集形式存在的,这样,预设推送接口就可以一次性通过推送通道得到很多待推送的消息,减少了推送通道的占用。s13,根据预定应用软件的id信息将消息集中的消息发送至预定应用软件。在预设推送接口接收到消息集后,就可以按照每个消息中携带的预定应用软件的id信息来判断其需要发送至的应用软件,这样,各个应用软件就可以接收到待推送的消息,进而呈现给用户。在计算机程序在被处理器执行根据预定应用软件的id信息将消息集中的消息发送至预定应用软件的步骤时,具体实现如下步骤:对消息集进行解析,以确定每个消息对应的预定应用软件的id信息;根据预定应用软件的id信息将消息发送至对应的预定应用软件。本实施例上述存储介质通过预设推送接口与推送服务器连接,通过主动获取待推送消息的方式来减少推送通道的使用,再通过预设推送接口将消息分发至各个预定应用软件,应用软件不需要通过自己对外接口与推送服务器交互,即使需要推送的消息再多,也不会造成应用软件的系统卡顿,系统性能大大提高,解决了现有技术的如下问题:当推送服务器针对某一应用一次推送的消息较多时,由于接口所附加的数据增多,会导致该应用出现一定程度的卡顿,系统性能受到影响,用户体验较低。在发送消息获取请求的过程中,可以是按照预定的时间间隔来发送,针对不同的应用软件,也可以设置不同的时间间隔,例如,将应用分为两类,一类是经常使用的,一类是不经常使用的,则计算机程序在被处理器执行通过预设推送接口向推送服务器发送消息获取请求的步骤时,具体实现如下步骤:获取各个应用软件在预定时间段内的使用次数;按照第一预定时间间隔向推送服务器发送使用次数大于预定次数的应用软件的消息获取请求,按照第二预定时间间隔向推送服务器发送使用次数小于或等于预定次数的应用软件的消息获取请求,其中,第一预定时间间隔小于第二预定时间间隔。在上述过程中,将不同的应用软件进行的不同的分类,每类应用软件就可以按照不同的时间来获取待推送消息。例如,终端系统中存在8个应用软件,即墨迹天气、美团、百度外卖、大众点评、美图秀秀、酷我音乐、网易云音乐和淘宝网;预定时间段设置为每天时,则在24小时内统计上述8个应用软件各自的使用次数,例如淘宝网、大众点评和网易云音乐的使用次数超过预定的5次,但墨迹天气、美团、百度外卖、美图秀秀和酷我音乐的使用次数没有超过预定的5次,则淘宝网、大众点评和网易云音乐为第一类应用软件,其推送的消息价值较大,则采用第一预定时间间隔向推送服务器发送消息获取请求,墨迹天气、美团、百度外卖、美图秀秀和酷我音乐为第二类应用软件,其采用第二预定时间间隔向推送服务器发送消息获取请求。通过上述方法,就可以做到合理的获取和推送消息。可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行上述实施例记载的方法步骤。可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。相对应于本实施例的存储介质,本实施例还提供一种移动终端,包括处理器、存储器及通信总线;通信总线用于实现处理器和存储器之间的连接通信;处理器用于执行存储器中存储的推送消息的程序,以实现以下步骤:通过预设推送接口向推送服务器发送消息获取请求,其中,消息获取请求中携带有多个预定应用软件的id信息;接收推送服务器根据多个预定应用软件的id信息发送的消息集;根据预定应用软件的id信息将消息集中的消息发送至预定应用软件。在发送消息获取请求的过程中,可以是按照预定的时间间隔来发送,针对不同的应用软件,也可以设置不同的时间间隔,例如,将应用分为两类,一类是经常使用的,一类是不经常使用的,因此,在处理器在执行通过预设推送接口向推送服务器发送消息获取请求的步骤时,具体实现如下步骤:获取各个应用软件在预定时间段内的使用次数;按照第一预定时间间隔向推送服务器发送使用次数大于预定次数的应用软件的消息获取请求,按照第二预定时间间隔向推送服务器发送使用次数小于或等于预定次数的应用软件的消息获取请求,其中,第一预定时间间隔小于第二预定时间间隔。实现时,处理器在执行根据预定应用软件的id信息将消息集中的消息发送至预定应用软件的步骤时,具体实现如下步骤:对消息集进行解析,以确定每个消息对应的预定应用软件的id信息;根据预定应用软件的id信息将消息发送至对应的预定应用软件。处理器在执行根据预定应用软件的id信息将消息集中的消息发送至预定应用软件时,具体可以进行如下操作:将各个应用软件在预定时间段内的使用次数由多到少进行排序:按照排序结果确定发送消息的预定应用软件的id信息的次序;按照次序依次将消息发送至预定应用软件。为了避免一些急需推送的消息被延误推送,进而影响该消息的推送效果,因此,处理器在推送服务器确定待推送的消息的推送级别是预设推送级别的情况下,预定应用软件的应用软件接口直接通过推送通道接收来自推送服务器的消息。本发明第四实施例提供了一种推送服务器,至少包括存储器、处理器,存储器上存储有计算机程序,处理器在执行存储器上的计算机程序时实现如下步骤:(1)接收来自预设推送接口的消息获取请求,其中,消息获取请求中携带有多个预定应用软件的id信息。在现有技术中,终端系统内的各个应用软件都设置了一个接口,使用该接口与推送服务器通信,进而获取需要推送的消息,并将需要推送的消息呈现在终端上。然而,各应用软件对应服务器的接口与推送进行带宽共享。各个应用软件对应服务器的接口会首先与推送服务器进行交互,获取此时需要推送的消息,以减少推送通道使用的次数。由于应用软件的接口不仅只与推送服务器交互,还需要执行应用软件正常的对外数据交互,因此,增加了与推送服务器的对接,应用软件的接口性能降低了。为了解决上述问题,本发明实施例专门在系统后台设置了一个预设推送接口,该预设推送接口与各个应用软件和推送服务器均进行交互,作为各个应用软件与推送服务器的中介,由该预设推送接口来向推送服务器发送消息获取请求,以请求由该接口统一得到各个应用需要推送的消息。实现的过程中,预设推送接口发送的消息获取请求中需要携带多个预定应用软件的id信息,这样,推送服务器才可以通过id信息来确定将哪些预定应用软件的消息发至预设推送接口。在实际操作时,多个预定应用软件的id信息可以以列表形式呈现。在接收到预设推送接口发送的消息获取请求时,可以是按照预定的时间间隔来接收到的。针对不同的应用软件,预设推送接口预定的时间间隔也可以设置为不同,例如,将应用分为两类,一类是经常使用的,一类是不经常使用的,则通过预设推送接口向推送服务器发送消息获取请求时,还可以具体包括如下过程:获取各个应用软件在预定时间段内的使用次数;按照第一预定时间间隔向推送服务器发送使用次数大于预定次数的应用软件的消息获取请求,按照第二预定时间间隔向推送服务器发送使用次数小于或等于预定次数的应用软件的消息获取请求,其中,第一预定时间间隔小于第二预定时间间隔。在上述过程中,将不同的应用软件进行的不同的分类,每类应用软件就可以按照不同的时间来获取待推送消息。例如,终端系统中存在8个应用软件,即墨迹天气、美团、百度外卖、大众点评、美图秀秀、酷我音乐、网易云音乐和淘宝网;预定时间段设置为每天时,则在24小时内统计上述8个应用软件各自的使用次数,例如淘宝网、大众点评和网易云音乐的使用次数超过预定的8次,但墨迹天气、美团、百度外卖、美图秀秀和酷我音乐的使用次数没有超过预定的8次,则淘宝网、大众点评和网易云音乐为第一类应用软件,其推送的消息价值较大,则采用第一预定时间间隔向推送服务器发送消息获取请求,墨迹天气、美团、百度外卖、美图秀秀和酷我音乐为第二类应用软件,其采用第二预定时间间隔向推送服务器发送消息获取请求。通过上述方法,就可以做到合理的获取和推送消息。(2)根据多个预定应用软件的id信息确定待推送的消息集。由于消息获取请求是针对多个预定应用软件的,因此,推送服务器返回的也是针对多个预定应用软件的,即预设推送接口接收到的消息是一个消息集形式存在的,这样,预设推送接口就可以一次性通过推送通道得到很多待推送的消息,减少了推送通道的占用。(3)将消息集通过推送通道发送至预设推送接口。推送服务器在通过推送通道发送推送消息时,由于是仅针对一个预设推送接口,不涉及到其他推送接口,因此,减少的推送通道的使用次数,减少了终端系统的带宽占用。在预设推送接口接收到消息集后,就可以按照每个消息中携带的预定应用软件的id信息来判断其需要发送至的应用软件,这样,各个应用软件就可以接收到待推送的消息,进而呈现给用户。在实现过程中,由于设置了预设推送接口,因此,推送服务器可以通过该预设推送接口来向各个应用软件来传递需要推送的消息,但是,一些时效性较强的消息是需要及时推送的,因此,可以对时效性较强的消息或者比较重要的消息进行标记,以突出其推送级别存在的差异。在对消息进行区别后,计算机程序还被处理器执行以下步骤:接收待推送的消息,并判断消息的推送级别是否为预设推送级别;在推送级别是预设推送级别的情况下,通过推送通道发送消息至消息对应的预定应用软件的应用软件接口;在推送级别不是预设推送级别的情况下,将接收到消息添加到本地存储的消息群中,以通过预设推送接口转发消息。例如,推送服务器可推送的应用软件有7个,即墨迹天气、美团、百度外卖、大众点评、美图秀秀、网易云音乐和淘宝网,在推送服务器接收到待推送给应用软件的消息时,先检测该消息是否存在固定标识。如果存在固定标识,则确认为是预设推送级别的消息,则通过推送通道发送消息至消息对应的应用软件的应用软件接口。当推送服务器检测到墨迹天气对应消息含有固定标识时,则直接将该消息通过推送通道发送至墨迹天气对应的接口;当推送服务器检测到淘宝网对应消息含有固定标识时,则直接将该消息通过推送通道发送至淘宝网对应的接口;当推送服务器检测到淘宝网对应的另一消息不含有固定标识时,将接收到消息添加到本地存储的消息群中,以通过预设推送接口转发消息;当推送服务器检测到网易云音乐对应的消息不含有固定标识时,将接收到消息添加到本地存储的消息群中,以通过预设推送接口转发消息。通过上述方法,可以将不同推送级别的消息按照不同的方式进行推送,在保证了推送消息具有时效性的前提下,又保证了对终端系统和应用软件的资源占用率最低,提升了系统性能。本实施例通过预设推送接口与推送服务器连接,通过主动获取待推送消息的方式来减少推送通道的使用,再通过预设推送接口将消息分发至各个预定应用软件,应用软件不需要通过自己对外接口与推送服务器交互,即使需要推送的消息再多,也不会造成应用软件的系统卡顿,系统性能大大提高,解决了现有技术的如下问题:当推送服务器针对某一应用一次推送的消息较多时,由于接口所附加的数据增多,会导致该应用出现一定程度的卡顿,系统性能受到影响,用户体验较低本发明第五实施例提供了一种推送消息的方法,该方法的流程的流程如图5所示,包括:s501,获取推送消息定时任务。s502,分析各个应用的使用频度。s503,根据使用频度来计算器获取推送消息的频率。s504,根据各个应用该次是否需要推送消息组成应用id列表。s505,发送带有应用id列表的消息获取请求,以获取推送消息。s506,解析推送消息,并转派给各个应用。推送通道即手机客户端与推送服务器所维持的一个长连接通道,该通道如果使用次数较多,会影响到手机的功耗。为了减少该推送通道的使用次数,在手机的推送中控中实现了一个定时接口,定时去推送服务器查询当前的推送消息,并获取当前需要推送给各个应用的所有消息。中控收到消息后,将消息转派给各个应用,各个应用再对获得的推送消息进行处理。中控在获取推送消息时,会分析手机中各个应用的运行情况,如果某些应用长时间未启动过,就没有必要每次都去获取它的推送消息;对于偶尔使用的应用,可以较低频率的获取推送消息;而经常使用的应用,则需要高频率的获取其推送消息。通过这种方式,可以大大减少推送通道的使用次数。中控根据应用的使用频度来确定自己获取其推送消息的频率。在调用获取推送消息的接口的参数中,使用的是应用的id列表,以逗号分隔。例如,某次调用要获取应用a、b、c的推送消息,则接口参数即应用a、b、c所对应的id,如“123,23,69”。推送服务器在收到接口请求后,解析该id列表,然后获取此时要推送给这三个应用的消息,组成消息列表返回给中控。中控在收到消息列表后,根据各个消息的应用id,将消息分配给各个应用,例如,应用a、b、c。有这些应用对各自的推送消息进行下一步的处理。上述方式可能存在一定的延时,所以为了保证重要消息及时推送到推送服务器在推送消息的时候,首先要对待推送的消息进行分级。本实施例目前只设置两个级别,重要和一般,下面结合图6对上述过程进行说明,包括:s601,判断待推送的消息是否为重要级别。如果是,则执行s602,否则执行s605。s602,判断当前是否正好有推送接口发送来的消息获取请求。如果是,则执行s603,否则执行s604。s603,通过推送接口返回该消息。s604,直接通过推送通道发送该消息。s605,等待推动接口返回该消息。对于重要的消息,在推送的时候,如果没有立即被推送接口所获取到,则直接通过推送通道进行推送。而对于一般的消息,则完全不使用推送通道,全部走推送接口,即由手机的推送中控来定时获取。对于一般的消息,还可以在推送服务器设定其有效期,例如3天。即在3天后,该消息就不会返回给推送接口了。通过这种方式,可以提高推送消息的资源使用效率。本发明实施例在手机侧实现推送中控,由该中控定时调用推送服务器的接口获取推送消息,取消各个应用接口与推送服务器的对接,释放各个应用;推送中控分析应用的使用情况,根据使用频度来调整获取推送消息的频率;对消息进行分级,重要的消息才会可能使用推送通道,以进一步减少推送通道的使用次数。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1