后台服务进程的保活方法及装置与流程

文档序号:11154609阅读:402来源:国知局
后台服务进程的保活方法及装置与制造工艺

本发明涉及计算机领域,具体而言,涉及一种后台服务进程的保活方法及装置。



背景技术:

分析发现,后台服务进程由于优先级低,容易被系统或第三方软件杀死,因而容易意外中断或重启,而进程意外中断或重启则会对数据推送或下载等业务造成了不良影响。

分析还发现,后台服务进程容易被杀死的主要原因有2个,分别为:(1)后台服务进程的优先级低,并且采用面向对象方法(Object-Oriented Method,简称为OOM)机制的系统(如Android系统),在内存吃紧时会自动杀死优先级低的进程,以腾出足够的空间来保证优先级高的进程正常运行;(2)用户,尤其是Android用户,大多都会有意识地清理后台应用(即后台服务进程),并且系统(如Android系统)或第三方清理软件一般会提供便捷的后台应用一键清理功能。

为了最大程度地保活后台服务进程,目前,一些大公司的热门应用普遍采用以下2种做法:(1)在进程被杀后,使用独立的守护进程重启被杀进程,或者使用第三方软件调起被杀进程,或者使用系统闹钟、静态广播等唤醒被杀进程;(2)由于前台服务进程的优先级高于后台服务进程的优先级,因而将不可见的后台服务进程设置为可见的前台服务进程,以提高进程的优先级,从而防止系统或第三方软件过早杀死进程,以实现后台服务进程保活的目的。

其中,对于方法(1),进程死后只是多了重新被激活的机会,实质上并不能达到保活目的;对于方法(2),虽然可以较好地达到保活目的,但是在设置前台服务进程时,系统API必然会要求前台服务进程绑定通知栏在一个通知上。对于该通知而言,一方面,用户无法直接清除这个通知,这会引起大部分用户反感;另一方面,用户通过使用第三方软件等手段清除该通知时,必然会取消前台服务进程,取消前台服务进程就等于杀死了对应的后台服务进程。

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



技术实现要素:

本发明实施例提供了一种后台服务进程的保活方法及装置,以至少解决相关技术中将前台服务进程单独绑定在一个通知上,导致清除该通知必然会取消与之具有绑定关系的前台服务进程,进而导致与该前台服务进程对应的后台服务进程必然会被杀死的技术问题。

根据本发明实施例的一个方面,提供了一种后台服务进程的保活方法,包括:获取前台临时服务进程,其中,上述前台临时服务进程是由后台临时服务进程配置得到的,且上述前台临时服务进程与前台常驻服务进程绑定在一个通知上,上述前台常驻服务进程是由后台常驻服务进程配置得到的,上述通知用于提示上述前台临时服务进程和上述前台常驻服务进程正在前台运行,上述前台常驻服务进程的优先级高于上述后台常驻服务进程的优先级;关闭上述前台临时服务进程;清除与上述前台临时服务进程绑定在一起的上述通知。

根据本发明实施例的另一方面,还提供了一种后台服务进程的保活装置,包括:获取单元,用于获取前台临时服务进程,其中,上述前台临时服务进程是由后台临时服务进程配置得到的,且上述前台临时服务进程与前台常驻服务进程绑定在一个通知上,上述前台常驻服务进程是由后台常驻服务进程配置得到的,上述通知用于提示上述前台临时服务进程和上述前台常驻服务进程正在前台运行,上述前台常驻服务进程的优先级高于上述后台常驻服务进程的优先级;第一关闭单元,用于关闭上述前台临时服务进程;清除单元,用于清除与上述前台临时服务进程绑定在一起的上述通知。

在本发明实施例中,采用由两个后台服务进程分别配置得到的两个前台服务进程绑定在同一个通知上的方式,通过获取前台临时服务进程,其中,前台临时服务进程是由后台临时服务进程配置得到的,且前台临时服务进程与前台常驻服务进程绑定在一个通知上,前台常驻服务进程是由后台常驻服务进程配置得到的,通知用于提示前台临时服务进程和前台常驻服务进程正在前台运行,前台常驻服务进程的优先级高于后台常驻服务进程的优先级;关闭前台临时服务进程;清除与前台临时服务进程绑定在一起的通知,以保活后台服务进程,由于关闭临时服务进程后系统会自动从通知栏中清除与之绑定在一起的通知,而通知被取消之后,用户就难以察觉以高优先级在前台运行的常驻服务进程,仅进一步地,用户察觉不到有常驻服务进程正在运行就不会主动查杀这个(或这些)进程,因而达到了牺牲临时服务进程以防止用户主动查杀正以高优先级在前台运行的常驻服务进程的目的,从而实现了保活正以高优先级在前台运行的常驻服务进程的技术效果,进而解决了相关技术中将前台服务进程单独绑定在一个通知上,导致清除该通知必然会取消与之具有绑定关系的前台服务进程,进而导致与该前台服务进程对应的后台服务进程必然会被杀死的技术问题。

附图说明

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

图1是本发明实施例的一种后台服务进程的保活方法的计算机终端的硬件结构框图;

图2是根据本发明实施例的一种可选的后台服务进程的保活方法的流程图;

图3是根据本发明实施例的一种可选的前后台服务进程的逻辑关系图;

图4是根据本发明实施例的一种可选的后台服务进程的保活装置的示意图。

具体实施方式

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

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

实施例1

根据本发明实施例,还提供了一种后台服务进程的保活方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种后台服务进程的保活方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

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

传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。

在上述运行环境下,本申请提供了如图2所示的后台服务进程的保活方法。图2是根据本发明实施例的一种可选的后台服务进程的保活方法的流程图,如图2所示,该方法包括以下步骤:

步骤S202,获取前台临时服务进程,其中,前台临时服务进程是由后台临时服务进程配置得到的,且与前台常驻服务进程绑定在一个通知上,前台常驻服务进程是由后台常驻服务进程配置得到的,通知用于提示前台临时服务进程和前台常驻服务进程正在前台运行,前台常驻服务进程的优先级高于后台常驻服务进程的优先级;

步骤S204,关闭前台临时服务进程;

步骤S206,清除与前台临时服务进程绑定在一起的通知,以保活后台服务进程。

也即,分别将运行在后台的临时服务进程和常驻服务进程配置成对应的运行在前台的临时服务进程和常驻服务进程,并将运行在前台的临时服务进程和常驻服务进程绑定在一个用于提示用户都有哪些正在前台运行的服务进程的通知上,这样,若取消临时服务进程的前台运行状态,系统就会自动从通知栏中清除与之绑定在一起的通知,在这种情况下,由于与前台常驻服务进程绑定的通知已经被清除了,因而用户难以察觉系统实际上正在运行前台常驻服务进程(即前台常驻服务进程还活着),从而不会主动查杀该前台常驻服务进程,对应的后台常驻服务进程也不会被查杀掉,即关闭前台临时服务进程并清除对应的通知,常驻服务是不会受任何影响的,可以在前台正常运行,不仅保持了常驻服务进程的前台运行状态的高优先级,而且由于与之绑定的通知基于上述原因被关闭了,此时用户难以察觉常驻服务还在前台运行着,因而一般不会主动清理这个或这些常驻服务,一方面,后台服务进程被配置为前台服务进程后优先级提高了,另一方面,用于提示该后台服务进程正在以前台运行状态运行的通知也被临时服务进程清除了,因而用户不会察觉并主动清除该后台服务进程,达到了延长后台服务进程的寿命即保活后台服务进程的技术效果。

需要说明的是,在本发明实施例中,可以通过以下方式将后台服务进程配置为对应的前台服务进程配置:以将后台临时服务进程配置为对应的前台临时服务进程配置为例,实施时,可以先声明并启动后台临时服务进程,再调用系统API“startForegruond”以将后台临时服务进程设置为前台临时服务进程;以将后台常驻服务进程配置为对应的前台常驻服务进程配置为例,实施时,可以先启动后台常驻服务进程,再调用系统API“startForegruond”以将后台常驻服务进程设置为前台常驻服务进程。其中,前后台服务进程的逻辑关系如图3所示。由于前台临时服务进程和前台常驻服务进程都绑定在一个通知上,这样,通过关闭前台临时服务进程来清楚上述通知,用户难以发现系统正在运行上述“前台常驻服务进程”,因而不会主动查杀“前台常驻服务进程”,从而达到了通过前台临时服务进程清楚对应的通知以保活前台常驻服务进程的目的。

在本发明实施例中,采用由两个后台服务进程分别配置得到的两个前台服务进程绑定在同一个通知上的方式,通过获取前台临时服务进程,其中,前台临时服务进程是由后台临时服务进程配置得到的,且与前台常驻服务进程绑定在一个通知上,前台常驻服务进程是由后台常驻服务进程配置得到的,通知用于提示前台临时服务进程和前台常驻服务进程正在前台运行,前台常驻服务进程的优先级高于后台常驻服务进程的优先级;关闭前台临时服务进程;清除与前台临时服务进程绑定在一起的通知,以保活后台服务进程,由于关闭临时服务进程后系统会自动从通知栏中清除与之绑定在一起的通知,而通知被取消之后,用户就难以察觉以高优先级在前台运行的常驻服务进程,仅进一步地,用户察觉不到有常驻服务进程正在运行就不会主动查杀这个(或这些)进程,因而达到了牺牲临时服务进程以防止用户主动查杀正以高优先级在前台运行的常驻服务进程的目的,从而实现了保活正以高优先级在前台运行的常驻服务进程的技术效果,进而解决了相关技术中将前台服务进程单独绑定在一个通知上,导致清除该通知必然会取消与之具有绑定关系的前台服务进程,进而导致与该前台服务进程对应的后台服务进程必然会被杀死的技术问题。

可选地,在获取前台临时服务进程之前,上述方法还包括:

S2,启动后台常驻服务进程并根据后台常驻服务进程配置前台常驻服务进程,以及将前台常驻服务进程绑定在通知上;

S4,启动后台临时服务进程并根据后台临时服务进程配置前台临时服务进程,以及将前台临时服务进程也绑定在通知上。

例如,启动PP助手的后台常驻服务进程A,并将该后台常驻服务进程设置为前台常驻服务进程,并将该前台常驻服务进程绑定在通知C上,同时启动一个临时服务进程B,该临时服务进程B为后台进程,为了最大程度的保证台常驻服务进程A存活,在启动临时服务进程B后,也需要将其设置为前台服务进程,即前台临时服务进程,同时也将该前台临时服务进程绑定在上述通知C上,随即取消临时服务进程B的前台运行状态,即取消前台临时服务进程。由于前台临时服务进程绑定在通知C上,而取消前台临时服务进程后,安卓系统会在通知栏中自动将上述通知C清除。由于整个过程是毫秒级的,用户还没看到步骤S204中前台常驻服务进程A和前台临时服务进程B的通知C在通知栏中展示出来,通知C就已经被步骤S206中的操作移除了。因此,本发明实施例通过巧妙地利用系统代码逻辑的这一缺陷,简单且静默地形成一个用户无感知却有着前台运行状态的常驻服务,该服务使其所属的进程成为前台可见进程,提高了优先级,避免系统过早将其杀死,从而达到了最大程度的保活效果。

可选地,在启动后台临时服务进程之前,上述方法还包括:

S6,定义一个空服务进程;

S8,声明空服务进程为后台临时服务进程。

例如,先将后台常驻服务进程A设置为前台服务进程并绑定通知C,再声明并启动一个后台临时服务进程B,并将该后台临时服务进程B也设置为前台服务进程并绑定通知C,这样2个前台服务进程就绑定在同一个通知上了,接着调用服务关闭函数API“stopService”以取消后台临时服务进程B的前台运行状态,并关闭该后台临时服务进程B,此时,安卓系统会同时清除掉通知栏里与该后台临时服务B绑定在一起的通知C,但是上述操作并不会影响到后台常驻服务进程A的正常运行,并仍然可以保持后台常驻服务进程A的前台服务的高优先级,同时通知栏中不会有该进程的提示信息,从而达到了后台服务在提高优先级后还能防止被用户基于通知提示查杀的技术效果,实现了保活常驻服务的目的。

另外,将后台临时服务进程定义为空服务进程,即该进程运行时不提供任何实质操作,可以简化整个程序设计过程,减少成本消耗。

可选地,根据后台常驻服务进程配置前台常驻服务进程包括:调用前台运行状态开启函数以将后台常驻服务进程配置前台常驻服务进程;根据后台临时服务进程配置前台临时服务进程包括:调用前台运行状态开启函数以将后台临时服务进程配置前台临时服务进程;关闭前台临时服务进程包括:调用前台运行状态关闭函数,以关闭前台临时服务进程。

例如,启动后台常驻服务进程A,调用系统API“startForeground”将后台常驻服务进程A设置为前台常驻服务进程,同时将前台常驻服务进程绑定在通知C上;声明并启动后台临时服务进程B,调用系统API“startForegruond”将后台临时服务进程B设置为前台临时服务进程,同时将前台临时服务进程也绑定在通知C上,这样,后台常驻服务进程和后台临时服务进程就绑定在同一个通知C上了。相应的,取消与后台临时服务进程对应的前台临时服务进程时,就可以调用系统API“stopForeground(true)”取消后台临时服务进程B的前台运行状态,即取消前台临时服务进程,此时系统就会从通知栏中移除与前台临时服务进程绑定的通知C。上述技术方案并不会影响到常驻服务的正常运行,并仍然保持了后台常驻服务进程A的前台服务的高优先级,同时在通知栏中不会出现前台常驻服务进程的任何提示信息,达到了在静默情况下提高后台服务的优先级以保活该后台服务的技术效果。

可选地,在关闭前台临时服务进程的同时,上述方法还包括:

S10,关闭与前台临时服务进程对应的后台临时服务进程。

例如,将后台常驻服务进程A设置为前台服务进程并绑定通知C,再启动一个后台临时服务进程B,将该后台临时服务进程B也设置为前台服务进程并绑定通知C,这样2个前台服务进程就绑定在同一个通知上了,接着取消后台临时服务进程B的前台运行状态并关闭该后台临时服务进程B,此时,安卓系统会同时清除掉通知栏里与该后台临时服务B绑定在一起的通知C,但是上述操作并不会影响到后台常驻服务进程A的正常运行,并仍然可以保持后台常驻服务进程A的前台服务的高优先级,同时通知栏中不会有该进程的提示信息,从而达到了静默提高后台服务优先级以保活对应的后台服务的技术效果。其中,所谓静默是指将目标后台服务设为前台服务,提高进程优先级为前台可见进程以保活目标后台服务,同时无需关联通知栏进行通知提示,可使用户全程无感知。

可选地,关闭与前台临时服务进程对应的后台临时服务进程包括:

S12,调用后台服务关闭函数;

S14,运行后台服务关闭函数,以关闭与前台临时服务进程对应的后台临时服务进程。

例如,将后台常驻服务进程A设置为前台服务进程并绑定通知C,再启动一个后台临时服务进程B,将该后台临时服务进程B也设置为前台服务进程并绑定通知C,这样2个前台服务进程就绑定在同一个通知上了,接着调用服务关闭函数API“stopService”取消后台临时服务进程B的前台运行状态并关闭该后台临时服务进程B,此时,安卓系统会同时清除掉通知栏里与该后台临时服务B绑定在一起的通知C,但是上述操作并不会影响到后台常驻服务进程A的正常运行,并仍然可以保持后台常驻服务进程A的前台服务的高优先级,同时通知栏中不会有该进程的提示信息,从而达到了静默提高后台服务优先级以保活对应的后台服务的技术效果。

需要说明的是,本发明的上述技术方案已经在安卓应用发行中心的PP助手客户端中试用过,试用结果表明其可以使后台服务进程的存活率提高、存活时间延长,因而可以提高推送、下载等业务的稳定性。

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

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

实施例2

根据本发明实施例,还提供了一种用于实施上述后台服务进程的保活方法的装置,如图4所示,该装置包括:获取单元402,用于获取前台临时服务进程,其中,前台临时服务进程是由后台临时服务进程配置得到的,且前台临时服务进程与前台常驻服务进程绑定在一个通知上,前台常驻服务进程是由后台常驻服务进程配置得到的,通知用于提示前台临时服务进程和前台常驻服务进程正在前台运行,前台常驻服务进程的优先级高于后台常驻服务进程的优先级;第一关闭单元404,用于关闭前台临时服务进程;清除单元406,用于清除与前台临时服务进程绑定在一起的通知,以保活后台服务进程。

也即,分别将运行在后台的临时服务进程和常驻服务进程配置成对应的运行在前台的临时服务进程和常驻服务进程,并将运行在前台的临时服务进程和常驻服务进程绑定在一个用于提示用户都有哪些正在前台运行的服务进程的通知上,这样,若取消临时服务进程的前台运行状态,系统就会自动从通知栏中清除与之绑定在一起的通知,在这种情况下,由于与前台常驻服务进程绑定的通知已经被清除了,因而用户难以察觉系统实际上正在运行前台常驻服务进程(即前台常驻服务进程还活着),从而不会主动查杀该前台常驻服务进程,对应的后台常驻服务进程也不会被查杀掉,即关闭前台临时服务进程并清除对应的通知,常驻服务是不会受任何影响的,可以在前台正常运行,不仅保持了常驻服务进程的前台运行状态的高优先级,而且由于与之绑定的通知基于上述原因被关闭了,此时用户难以察觉常驻服务还在前台运行着,因而一般不会主动清理这个或这些常驻服务,一方面,后台服务进程被配置为前台服务进程后优先级提高了,另一方面,用于提示该后台服务进程正在以前台运行状态运行的通知也被临时服务进程清除了,因而用户不会察觉并主动清除该后台服务进程,达到了延长后台服务进程的寿命即保活后台服务进程的技术效果。

需要说明的是,在本发明实施例中,可以通过以下方式将后台服务进程配置为对应的前台服务进程配置:以将后台临时服务进程配置为对应的前台临时服务进程配置为例,实施时,可以先声明并启动后台临时服务进程,再调用系统API“startForegruond”以将后台临时服务进程设置为前台临时服务进程;以将后台常驻服务进程配置为对应的前台常驻服务进程配置为例,实施时,可以先启动后台常驻服务进程,再调用系统API“startForegruond”以将后台常驻服务进程设置为前台常驻服务进程。

在本发明实施例中,采用由两个后台服务进程分别配置得到的两个前台服务进程绑定在同一个通知上的方式,通过获取前台临时服务进程,其中,前台临时服务进程是由后台临时服务进程配置得到的,且与前台常驻服务进程绑定在一个通知上,前台常驻服务进程是由后台常驻服务进程配置得到的,通知用于提示前台临时服务进程和前台常驻服务进程正在前台运行,前台常驻服务进程的优先级高于后台常驻服务进程的优先级;关闭前台临时服务进程;清除与前台临时服务进程绑定在一起的通知,以保活后台服务进程,由于关闭临时服务进程后系统会自动从通知栏中清除与之绑定在一起的通知,而通知被取消之后,用户就难以察觉以高优先级在前台运行的常驻服务进程,仅进一步地,用户察觉不到有常驻服务进程正在运行就不会主动查杀这个(或这些)进程,因而达到了牺牲临时服务进程以防止用户主动查杀正以高优先级在前台运行的常驻服务进程的目的,从而实现了保活正以高优先级在前台运行的常驻服务进程的技术效果,进而解决了相关技术中将前台服务进程单独绑定在一个通知上,导致清除该通知必然会取消与之具有绑定关系的前台服务进程,进而导致与该前台服务进程对应的后台服务进程必然会被杀死的技术问题。

可选地,上述装置还包括:第一处理单元,用于在获取前台临时服务进程之前,启动后台常驻服务进程并根据后台常驻服务进程配置前台常驻服务进程,以及将前台常驻服务进程绑定在通知上;第二处理单元,用于启动后台临时服务进程并根据后台临时服务进程配置前台临时服务进程,以及将前台临时服务进程也绑定在通知上。

可选地,上述装置还包括:定义单元,用于在启动后台临时服务进程之前,定义一个空服务进程;声明单元,用于声明空服务进程为后台临时服务进程。

可选地,上述第一处理单元还用于:调用前台运行状态开启函数以将后台常驻服务进程配置前台常驻服务进程;第二处理单元还用于:调用前台运行状态开启函数以将后台临时服务进程配置前台临时服务进程;第一关闭单元还用于:调用前台运行状态关闭函数,以关闭前台临时服务进程。

可选地,上述装置还包括:第二关闭单元,还用于在关闭前台临时服务进程的同时,关闭与前台临时服务进程对应的后台临时服务进程。

可选地,上述第二关闭单元包括:调用模块,用于调用后台服务关闭函数;运行模块,用于运行后台服务关闭函数,以关闭与前台临时服务进程对应的后台临时服务进程。

需要说明的是,装置部分的实施方式与方法部分的实施方式对应相同或类似,申请人在此不再赘述,同时装置部分各实施方式中的单元/模块所实现的功能与方法部分各实施方式中的对应步骤所实现的功能对应相同或类似,申请人在此不再赘述。

实施例3

本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。

可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。

在本实施例中,上述计算机终端可以执行应用程序的后台服务进程的保活方法中以下步骤的程序代码:获取前台临时服务进程,其中,前台临时服务进程是由后台临时服务进程配置得到的,且前台临时服务进程与前台常驻服务进程绑定在一个通知上,前台常驻服务进程是由后台常驻服务进程配置得到的,通知用于提示前台临时服务进程和前台常驻服务进程正在前台运行,前台常驻服务进程的优先级高于后台常驻服务进程的优先级;关闭前台临时服务进程;清除与前台临时服务进程绑定在一起的通知,以保活后台服务进程。

可选地,上述计算机终端(标记为计算机终端A)可以包括:一个或多个(图中仅示出一个)处理器、存储器、以及其他部件。

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

处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:在取消与后台临时服务进程对应的前台临时服务进程之后,关闭后台临时服务进程。

可选的,上述处理器还可以执行如下步骤的程序代码:在获取前台临时服务进程之前,启动后台常驻服务进程并根据后台常驻服务进程配置前台常驻服务进程,以及将前台常驻服务进程绑定在通知上;启动后台临时服务进程并根据后台临时服务进程配置前台临时服务进程,以及将前台临时服务进程也绑定在通知上。

可选的,上述处理器还可以执行如下步骤的程序代码:在启动后台临时服务进程之前,方法还包括:定义一个空服务进程;声明空服务进程为后台临时服务进程。

可选的,上述处理器还可以执行如下步骤的程序代码:调用前台运行状态开启函数以将后台常驻服务进程配置前台常驻服务进程;调用前台运行状态开启函数以将后台临时服务进程配置前台临时服务进程;调用前台运行状态关闭函数,以关闭前台临时服务进程。

可选的,上述处理器还可以执行如下步骤的程序代码:在关闭前台临时服务进程的同时,关闭与前台临时服务进程对应的后台临时服务进程。

可选的,上述处理器还可以执行如下步骤的程序代码:调用后台服务关闭函数;运行后台服务关闭函数,以关闭与前台临时服务进程对应的后台临时服务进程。

在本发明实施例中,采用两个前台服务进程绑定同一个通知的方式,通过获取前台临时服务进程,其中,前台临时服务进程是由后台临时服务进程配置得到的,且与前台常驻服务进程绑定在一个通知上,前台常驻服务进程是由后台常驻服务进程配置得到的,通知用于提示前台临时服务进程和前台常驻服务进程正在前台运行,前台常驻服务进程的优先级高于后台常驻服务进程的优先级;关闭前台临时服务进程;清除与前台临时服务进程绑定在一起的通知,以保活后台服务进程,达到了使用临时服务进程清除通知的目的,从而实现了防止用户反感,避免常驻进程被杀的技术效果,进而解决了相关技术中将前台服务进程单独绑定在一个通知上,导致清除该通知必然会取消与之具有绑定关系的前台服务进程,进而导致与该前台服务进程对应的后台服务进程必然会被杀死的技术问题。

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

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

实施例4

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例1所提供的后台服务进程的保活方法所执行的程序代码。

可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:获取前台临时服务进程,其中,前台临时服务进程是由后台临时服务进程配置得到的,且前台临时服务进程与前台常驻服务进程绑定在一个通知上,前台常驻服务进程是由后台常驻服务进程配置得到的,通知用于提示前台临时服务进程和前台常驻服务进程正在前台运行,前台常驻服务进程的优先级高于后台常驻服务进程的优先级;关闭前台临时服务进程;清除与前台临时服务进程绑定在一起的通知,以保活后台服务进程。

可选地,在本实施例中,存储介质还被设置为存储用于执行以下步骤的程序代码:在获取前台临时服务进程之前,启动后台常驻服务进程并根据后台常驻服务进程配置前台常驻服务进程,以及将前台常驻服务进程绑定在通知上;启动后台临时服务进程并根据后台临时服务进程配置前台临时服务进程,以及将前台临时服务进程也绑定在通知上。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:在启动后台临时服务进程之前,方法还包括:定义一个空服务进程;声明空服务进程为后台临时服务进程。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:调用前台运行状态开启函数以将后台常驻服务进程配置前台常驻服务进程;调用前台运行状态开启函数以将后台临时服务进程配置前台临时服务进程;调用前台运行状态关闭函数,以关闭前台临时服务进程。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:在关闭前台临时服务进程的同时,关闭与前台临时服务进程对应的后台临时服务进程。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:调用后台服务关闭函数;运行后台服务关闭函数,以关闭与前台临时服务进程对应的后台临时服务进程。

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

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

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

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

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

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

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

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