停止进程的方法、装置和移动终端与流程

文档序号:11864054阅读:302来源:国知局
停止进程的方法、装置和移动终端与流程

本发明涉及移动终端技术领域,尤其涉及一种停止进程的方法、装置和移动终端。



背景技术:

随着移动终端不断发展,移动终端中可安装各种应用程序以满足用户的不同的功能需求。随着移动终端中应用程序的增多,移动终端的续航能力也成为影响用户体验的重要一项。移动终端中安装的众多应用程序不仅在正常运行时消耗电能,更多时候在锁屏之后依然活跃在后台并消耗大量电能,导致移动终端续航时间大大降低。

为此,可使用黑白名单的方法对后台运行的应用程序进行过滤,停止不需要保留的后台应用程序进程或服务,以节省电能。然而,实际中被停止进程的应用程序会持续不断的被拉活或者自启动,因此并不能有效达到省电、提高移动终端续航能力的目的。



技术实现要素:

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明第一方面的目的在于提出一种停止进程的方法,能够节省移动终端的电能,进而提升移动终端的续航时间。

本发明的第二方面的目的在于提出一种停止进程的装置。

本发明的第二方面的目的在于提出一种移动终端。

为达上述目的,根据本发明第一方面实施例提出了一种停止进程的方法,包括:

确定处于锁屏状态的移动终端的锁屏时长,并根据所述锁屏时长确定本次处理时间;

获取所述移动终端内,当前运行的进程信息和所述进程对应的应用程序的联网情况;

如果所述联网情况表明所述应用程序未联网,且,达到本次处理时间后,获取所述应用程序的运行信息,并根据所述进程信息和所述应用程序的运行信息,停止所述进程。

根据本发明实施例的停止进程的方法,还可包括以下附加技术特征:

在本发明的一个实施例中,所述根据所述进程信息和所述应用程序的运行信息,停止所述进程,包括:

根据所述进程信息和/或所述应用程序的运行信息,判断所述进程是否满足预设的过滤条件;

如果所述进程满足预设的过滤条件,则根据所述应用程序的运行信息停止所述进程。

在本发明的一个实施例中,所述进程满足预设的过滤条件包括:

进程信息满足第一特征集合。

在本发明的一个实施例中,所述进程满足预设的过滤条件还包括:

进程信息满足第二特征集合,且不存在通知栏消息;

或者,进程信息满足第三特征集合,且存在通知栏消息,所述通知栏消息不在通知栏白名单中。

在本发明的一个实施例中,所述到达本次处理时间,包括:

如果所述锁屏时长小于预设阈值,则与锁屏起始时间相距第一预设时长后到达本次处理时间;

如果所述锁屏时长大于或等于所述预设阈值,则直接确定到达本次处理时间,或者,与上次处理时间相距第二预设时长后到达本次处理时间。

在本发明的一个实施例中,如果所述锁屏时长小于所述预设阈值,到达本次处理时间时,所述根据所述应用程序的运行信息停止所述进程,包括:

如果所述应用程序在与锁屏起始时间相距第一预设时长后产生运行信息,则判断所述应用程序是否在应用程序黑名单中,如果在,则停止所述进程。

在本发明的一个实施例中,如果所述锁屏时长大于或等于预设阈值,到达本次处理时间时,所述根据所述应用程序的运行信息停止所述进程,包括:

如果所述应用程序在与锁屏起始时间相距所述第二预设时长后产生运行信息,则判断所述应用程序是否在应用程序的第一白名单中,如果不在,则停止所述进程。

在本发明的一个实施例中,所述方法还包括:

判断已处理次数是否小于预设次数,以便在小于时,确定本次处理时间及其后续步骤;

如果所述已处理次数大于或等于预设次数,则结束流程。

在本发明的一个实施例中,在停止所述进程之前,还包括:

判断所述进程对应的应用程序是否在应用程序的第二白名单中;

如果所述进程对应的应用程序不在所述第二白名单中,则停止所述进程。

在本发明的一个实施例中,还包括:

如果所述应用程序在预设时间内的网络数据传输量小于预设值,则确定所述应用程序未联网。

本发明的第二方面的实施例提供了一种停止进程的装置,包括:

确定模块,用于确定处于锁屏状态的移动终端的锁屏时长,并根据所述锁屏时长确定本次处理时间;

获取模块,用于获取所述移动终端内,当前运行的进程信息和所述进程对应的应用程序的联网情况;

控制模块,用于在所述联网情况表明所述应用程序未联网,且,达到本次处理时间时,获取所述应用程序的运行信息,并根据所述进程信息和所述应用程序的运行信息,停止所述进程。

根据本发明实施例的停止进程的装置,还可包括以下附加技术特征:

在本发明的一个实施例中,所述控制模块用于:

根据所述进程信息和/或所述应用程序的运行信息,判断所述进程是否满足预设的过滤条件;

如果所述进程满足预设的过滤条件,则根据所述应用程序的运行信息停止所述进程。

在本发明的一个实施例中,所述进程满足预设的过滤条件包括:

进程信息满足第一特征集合。

在本发明的一个实施例中,所述进程满足预设的过滤条件还包括:

进程信息满足第二特征集合,且不存在通知栏消息;

或者,进程信息满足第三特征集合,且存在通知栏消息,所述通知栏消息不在通知栏白名单中。

在本发明的一个实施例中,所述到达本次处理时间,包括:

如果所述锁屏时长小于预设阈值,则与锁屏起始时间相距第一预设时长后到达本次处理时间;

如果所述锁屏时长大于或等于所述预设阈值,则直接确定到达本次处理时间,或者,与上次处理时间相距第二预设时长后到达本次处理时间。

在本发明的一个实施例中,所述控制模块用于:

在所述锁屏时长小于所述预设阈值,到达本次处理时间时,如果所述应用程序在与锁屏起始时间相距第一预设时长后产生运行信息,则判断所述应用程序是否在应用程序黑名单中,如果在,则停止所述进程。

在本发明的一个实施例中,所述控制模块用于:

在所述锁屏时长大于或等于预设阈值,到达本次处理时间时,如果所述应用程序在与锁屏起始时间相距所述第二预设时长后产生运行信息,则判断所述应用程序是否在应用程序的第一白名单中,如果不在,则停止所述进程。

在本发明的一个实施例中,所述装置还包括:

第一判断模块,用于判断已处理次数是否小于预设次数,以便在小于时,确定本次处理时间及其后续步骤;

所述控制模块用于在所述已处理次数大于或等于预设次数时,结束流程。

在本发明的一个实施例中,还包括:

第二判断模块,用于在停止所述进程之前,判断所述进程对应的应用程序是否在应用程序的第二白名单中;

所述控制模块用于在所述进程不在所述第二白名单中时,停止所述进程。

在本发明的一个实施例中,所述获取模块用于:

在所述应用程序在预设时间内的网络数据传输量小于预设值时,确定所述应用程序未联网。

本发明的第三方面的实施例提供了一种移动终端,包括:壳体、处理器、存储器、电路板和电源电路,其中,所述电路板安置在所述壳体围成的空间内部,所述处理器和所述存储器设置在所述电路板上;所述电源电路,用于为所述移动终端的各个电路或器件供电;所述存储器用于存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于:

确定处于锁屏状态的移动终端的锁屏时长,并根据所述锁屏时长确定本次处理时间;

获取所述移动终端内,当前运行的进程信息和所述进程对应的应用程序的联网情况;

如果所述联网情况表明所述应用程序未联网,且,达到本次处理时间后,获取所述应用程序的运行信息,并根据所述进程信息和所述应用程序的运行信息,停止所述进程。

本发明实施例的停止进程的方法、装置和移动终端,可确定移动终端的锁屏时长,并根据锁屏时长确定本次处理时间,获取移动终端内当前运行的进程信息和对应的应用程序的联网情况,如果应用程序未联网,且达本次处理时间后,根据进程信息和应用程序的运行信息停止进程,能够从进程优先级、联网情况,以及锁屏时间等系统层面对锁屏期间活跃的应用程序进程进行管理,在不影响用户使用连续性的同时,停止用户感知度低的进程,以节省移动终端的电能,进而提升移动终端的续航时间。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1为根据本发明一个实施例的停止进程的方法的流程图;

图2为根据本发明另一个实施例的停止进程的方法的流程图;

图3为根据本发明另一个实施例的停止进程的方法的流程图;

图4为根据本发明另一个实施例的停止进程的方法的流程图;

图5为根据本发明另一个实施例的停止进程的方法的流程图;

图6为根据本发明另一个实施例的停止进程的方法的流程图;

图7为根据本发明另一个实施例的停止进程的方法的流程图;

图8为根据本发明一个实施例的进程停止的装置的结构示意图;

图9为根据本发明另一个实施例的进程停止的装置的结构示意图;

图10为根据本发明另一个实施例的进程停止的装置的结构示意图;

图11为根据本发明一个实施例的移动终端的结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参考附图描述根据本发明实施例的停止进程的方法、装置和移动终端。

图1为根据本发明一个实施例的停止进程的方法的流程图。

如图1所示,根据本发明实施例的停止进程的方法,包括以下步骤。

S101,确定处于锁屏状态的移动终端的锁屏时长,并根据所述锁屏时长确定本次处理时间。

其中,移动终端的锁屏时长为移动终端进入锁屏状态后的持续长。本次处理时间为进行停止进程操作的时间。

在本发明的一个实施例中,在移动终端开始进入锁屏状态时,可开始计时,得到锁屏时长。

本发明的实施例中,由于随着锁屏时长的不断增加,各个应用程序及其进程对用户的感知度越来越低。在移动终端刚进入锁屏时,用户对刚刚的使用状态,包括各种应用程序的感知存在比较深刻的印象,且用户存在短时内解锁再次进入操作系统的可能,因此,为了方便用户使用,可在锁屏后的短时间内(锁屏时长小于预设阈值),通过首次停包策略只清理掉那些用户感知度比较低的后台应用程序(如与用户不存交互在或存在很少交互的应用程序),而保留感知度较高的后台应用程序,防止用户很快解锁进入操作系统时,原本使用的应用程序被停止而打断用户使用的连续性。而随着锁屏时长的增长,用户对之前使用状态和感知度印象较深刻的进程的感知度逐渐降低,因此,在锁屏时长较长时,可通过深度停包策略对这部分后台进程进行清理,实现进程的深度清理。

因此,在本发明的实施例中,可根据锁屏时长制定不同的策略以停止后台进程。从而,在所述锁屏时长小于预设阈值时,保留用户感知度比较高的部分进程,在锁屏时长大于或等于预设阈值时,再对这部分进程进行深度清理。

相对应地,对于不同进程停止策略,进程停止的处理时间也不同,因此,可根据锁屏时长确定本次处理时间。具体地,如果所述锁屏时长小于预设阈值,则与锁屏起始时间相距第一预设时长后到达本次处理时间;如果所述锁屏时长大于或等于预设阈值,则直接确定到达本次处理时间,或者,与上次处理时间相距第二预设时长后到达本次处理时间。其中,若本次处理为首次处理,则直接确定到达本次处理时间,否则,在与上次处理时间相距第二预设时长后到达本次处理时间。其中,预设阈值可为系统默认设定或者由用户设定,例如,预设阈值可为30分钟。

在本发明的一个实施例中,第一预设时长可以是两分钟,第二预设时长可以是30分钟。需要说明的是,第一预设时长段与第二预设时长段的长度也可根据实际需求设置为其他长度,本发明对此不做限定。

也就是说,如果锁屏时长小于预设阈值,则执行进程处理的处理时间为与锁屏起始时间相距两分钟的时。如果锁屏时长大于或等于预设阈值,则执行进程处理的处理时间为与上次处理时间相距30分钟后的时间或当前时间。

举例来说,如果10:00为锁屏起始时间,则在10:00-10:30时间段内,处理时间可为10:02之后的时间,即10:02-10:30之间的时间。在10:30之后,可每隔半个小时执行一次处理,即每次处理时间与上一次处理时间相距至少30分钟,如果上一次处理时间为11:00,则本次处理时间为11:30之后的时间。如果在10:30没有进行过处理,则本词处理时间可为当前时间。

本发明的实施例中,如果锁屏不满两分钟,对移动终端中的进程都不处理,预留出第一预设时长,以便应用程序或进程能够处理自身的遗留工作。

S102,获取所述移动终端内,当前运行的进程的信息和所述进程对应的应用程序的联网情况。

在本发明的一个实施例中,进程的信息可包括进程的优先级信息和状态信息。

其中,优先级信息可以是移动终端的操作系统为进程分配的优先级信息。进程的优先级信息是操作系统根据进程的CPU时长、资源占用情况、活动状态等为进程设置的优先级。例如,优先级信息可以是ADJ(即oom_adj,Out Of Memory_adj,系统对于内存不足时对进程进行释放时优先释放权值)值,ADJ值越小优先级越低,表示对应的进程越重要,越不容易被释放,反之则越容易被释放。

进程的状态信息,表示进程间通信的状态,代表进程与公共服务之间的通信状态,举例来说,可通过ADJ中的process state进程状态值确定进程的状态信息。当process state=3时,表明存在进程间通信。

举例来说,如果所述锁屏时长小于预设阈值,且所述ADJ值是2,则确定所述进程与用户存在交互,例如有通知栏、悬浮窗、widget(桌面插件)等。如果所述锁屏时长大于或等于预设阈值,且所述ADJ值是2或7,则确定所述进程与用户存在交互。如果所述ADJ值是非2、非5、非8以及非大于等于9,且所述ADJ值的状态值(process state)是3,则确定进程与用户不存在交互,但存在进程间通信,即所述进程虽然与用户不存在交互,但该进程与公共服务或者其他进程存在通信的状态。,如果所述ADJ值是5、8或大于等于9,则确定所述进程在使用CPU。其中,ADJ值为5的时候,表示进程可能没有上述通知栏、悬浮窗、widget等状态但是还在使用CPU,而当ADJ值更低,例如为8或9时,表示进程存在更弱,例如,间歇性的使用CPU等。

本发明的实施例中,应用程序的联网情况可根据应用程序在预设时间内的网络数据传输量来确定。其中,网络数据传输可包括上传和下载。如果所述应用程序在预设时间内的网络数据传输量小于预设值,则可确定所述应用程序未联网。例如,如果在3秒内网络数据传输量小于10KB,则可确定应用程序未联网。

S103,如果所述联网情况表明所述应用程序未联网,且,达到本次处理时间后,获取所述应用程序的运行信息,并根据所述进程信息和所述应用程序的运行信息,停止所述进程。

其中,应用程序的运行信息可包括但不限于运行时间、与用户的交互状态、在锁屏前以及锁屏后的活动状态等。

在本发明的一个实施例中,如图2所示,所述根据所述进程信息和所述应用程序的运行信息,停止所述进程,可包括步骤S201-S202。

S201,根据所述进程信息和/或所述应用程序的运行信息,判断所述进程是否满足预设的过滤条件。

在本发明的一个实施例中,过滤条件可包括进程信息满足第一特征集合。

其中,进程信息满足第一特征集合是指进程的优先级信息表明进程在使用CPU。举例来说,当进程的优先级信息是ADJ值时,如果进程的ADJ值是5、8或大于等于9,则可确定该进程在使用CPU。

在本发明的另一个实施例中,过滤条件还可包括:进程信息满足第二特征集合,且不存在通知栏消息;或者,进程信息满足第三特征集合,且存在通知栏消息,所述通知栏消息不在通知栏白名单中。

其中,进程信息满足第二特征集合是指进程的优先级信息表明进程与用户存在交互。举例来说,当进程的优先级信息是ADJ值时,如果进程的ADJ值是2,则可确定所述进程与用户存在交互。

在本发明的实施例中,锁屏时长大于或等于预设阈值相对于锁屏时长小于预设阈值时,可清理更多的进程。因此,锁屏时长大于或等于预设阈值时的第二特征集合可更加严格。举例来说,如果锁屏时长小于预设阈值,仅将进程的ADJ值是2情况确定为进程与用户存在交互。如果锁屏时长大于或等于预设阈值,则将进程的ADJ值是2或7的情况均确定为进程与用户存在交互。从而,在锁屏时长较长时,可进一步停止在短时锁屏状态下未考虑停止的ADJ值是7的进程,实现进程的深度清理。

进程信息满足第三特征集合是指进程的状态信息表明进程与用户不存在交互,但存在进程间通信。举例来说,进程的优先级信息是ADJ值时,如果所述ADJ值是非2、非5、非8以及非大于等于9,且所述ADJ值的状态值是3,则可确定进程与用户不存在交互,但存在进程间通信。

其中,通知栏白名单可预先根据已知的需要停止的进程对应的应用程序的通知栏消息进行设定。也可在后续实际应用过程中对通知栏白名单进行更新。

S202,如果所述进程满足预设的过滤条件,则根据所述应用程序的运行信息停止所述进程。

S203,如果所述进程不满足预设的过滤条件,则忽略本次处理。

在本发明的实施例中,如果所述联网情况表明所述应用程序未联网,且,达到本次处理时间后,如果根据进程信息判断进程满足上述预设的过滤条件,则可根据进程对应的应用程序的运行信息停止所述进程。

在本发明的实施例中,为了能够在不影响用户使用的连续性的前提下,可根据锁屏时长采取不同的策略停止后台进程。在不同的策略中,根据进程对应的应用程序的运行信息停止所述进程的策略也有所不同。

具体地,下面通过图3和图4所示实施例对首次停包策略中停止的进程方法进行说明。

在本发明的一个实施例中,如果锁屏时长小于预设阈值,可通过如图3所示的步骤S301-S307停止进程。

S301,确定处于锁屏状态的移动终端的锁屏时长。

S302,如果锁屏时长小于预设阈值,则确定在与锁屏起始时间相距第一预设时长后,达到本次处理时间。

S303,获取所述移动终端内,当前运行的进程的信息和所述进程对应的应用程序的联网情况。

S304,如果所述联网情况表明所述应用程序未联网,且达到本次处理时间后,判断所述应用程序是否在与锁屏起始时间相距第一预设时长后产生运行信息。

S305,如果是,则判断所述应用程序是否在应用程序黑名单中。

否则,执行S307。

其中,应用程序黑名单为预设的需要停止的进程对应的应用程序包名名单。可由用户设定,或者根据大量应用程序数据统计得到。

S306,如果在,则停止所述进程。

否则,执行S307。

S307,忽略本次停止进程的处理。

也就是说,如果所述应用程序在预设时间内的网络数据传输量小于预设值,且当前时间在与锁屏起始时间相距第一预设时长后,可判断在与锁屏起始时间相距第一预设时长后的时间内该进程是否在运行,且该进程对应的应用程序在上述黑名单中,则可停止该进程。否则忽略本次处理。

举例来说,如果10:00为锁屏起始时间,第一预设时长为2分钟,对于在10:02-10:30之间运行的进程,如果进程对应的应用程序未联网且属于应用程序黑名单中,则可在达到本次处理时间后,将该进程停止。

由此,在锁屏时间较短时,仅对部分用户感知度比较低的进程进行清理,而保留用户感知度高的进程,而并不是将所有后台进程都停止,从而不影响用户使用连续性。

进一步地,为了避免误将应用程序白名单中的应用程序对应的进程停止,可在停止进程前判断进程对应的应用程序是否在预设的第二白名单中。其中,第二白名单为系统应用程序的名单,从而可避免误将系统进程做停止处理,影响用户体验。为此,在本发明的另一个实施例中,在锁屏时长小于预设阈值时,还可通过如图4所示的步骤S401-S408停止进程。

其中,S401-S405与图3所示实施例中的S301-S305相同。

S406,如果所述应用程序在应用程序黑名单中,则进一步判断所述进程对应的应用程序是否在应用程序的第二白名单中。

否则,执行S408。

S407,如果所述进程对应的应用程序不在所述第二白名单中,则停止所述进程。

否则,执行S408。

S408,忽略本次停止进程的处理。

由此,可避免误将系统进程做停止处理,影响用户体验。

下面,通过图5、图6和图7所示实施例对深度停包策略中停止的进程方法进行说明。

在本发明的一个实施例中,如果锁屏时长大于或等于预设阈值,可通过如图5所示的步骤S501-S507停止进程。

S501,确定处于锁屏状态的移动终端的锁屏时长。

S502,如果锁屏时长大于或等于预设阈值,则可确定当前时间到达本次处理时间,或者,确定在与上次处理时间相距第二预设时长后到达本次处理时间。

S503,获取所述移动终端内,当前运行的进程的信息和所述进程对应的应用程序的联网情况。

S504,如果所述联网情况表明所述应用程序未联网,且达到本次处理时间后,判断所述应用程序是否在与锁屏起始时间相距所述第二预设时长后产生运行信息。

S505,如果是,则判断所述应用程序是否在应用程序的第一白名单中。

否则,执行S507。

其中,第一白名单为预设的不需要停止的进程对应的应用程序包名名单。可由用户设定,或者根据大量应用程序数据统计得到。

S506,如果不在,则停止所述进程。

否则,执行S507。

S507,忽略本次停止进程的处理。

也就是说,如果所述应用程序在预设时间内的网络数据传输量小于预设值,且达到本次处理时间后,可判断在与锁屏起始时间相距第二预设时长后的时间内该进程是否在运行,且该进程对应的应用程序不在上述第一白名单中,则可停止该进程。否则忽略本次处理。

举例来说,如果10:00为锁屏起始时间,第二预设时长为30分钟,对于在10:30之后运行的进程,如果进程对应的应用程序未联网且不属于应用程序的第一白名单中,则可在达到本次处理时间后,将该进程停止。

由此,在锁屏时间较长时,对在首次停包策略中未被清理的进程或者后续自行启动的进程进行清理,能够随着锁屏时长的增加,进一步进行深度清理,,能够在不影响用户使用连续性的同时,有效降低电量消耗,进而提升移动终端续航时间。

由于一些应用程序的进程在被停止后,可自行再次启动。因此,在本发明的实施例中,在锁屏时长大于第二预设时长时,可通过重复执行深度停包策略,以停止自行重启的应用程序的进程。深度停包策略的重复周期可根据大多已知的自行重启的应用程序的重启周期进行设定。例如,可设定每隔半个小时执行一次深度停包策略。

此外,由于大多数应用程序的自行重启策略是在重启多次后不再重启,因此,可在深度停包策略重复执行一定次数后,停止深度停包策略。具体地,可通过如图6所示的步骤S601-S609停止进程。

S601,判断已处理次数是否小于预设次数。

如果已处理次数大于或等于预设次数,则结束流程。

S602,如果已处理次数小于预设次数,则确定处于锁屏状态的移动终端的锁屏时长。

步骤S603-S608与图5所示实施例中步骤S502-S507。

从而能够有效针对自行重启的应用程序的进程进行停止处理,进一步节省移动终端电量。

进一步地,为了避免误将应用程序白名单中的应用程序对应的进程停止,可在停止进程前判断进程对应的应用程序是否在预设的第二白名单中。其中,第二白名单为系统应用程序的名单,从而可避免误将系统进程做停止处理,影响用户体验。为此,在本发明的另一个实施例中,在锁屏时长大于或等于预设阈值时,还可通过如图7所示的步骤S701-S708停止进程。

其中,S701-S705与图5所示实施例中的S501-S505相同。

S706,如果所述应用程序不在应用程序的第一白名单中,则判断进一步所述进程对应的应用程序是否在应用程序的第二白名单中。

否则,执行S708。

S707,如果所述进程对应的应用程序不在所述第二白名单中,则停止所述进程。

否则,执行S708。

S708,忽略本次停止进程的处理。

由此,可避免误将系统进程做停止处理,影响用户体验。

在本发明的实施例中,应用程序的第一白名单、第二白名单和黑名单可存储在本地或云端,可由系统默认设置,也可由用户或者第三方设定。

本发明的实施例中,如果锁屏时长小于第一预设时长,则对移动终端中的进程都不处理,预留出第一预设时长,以便应用程序或进程能够处理自身的遗留工作。

本发明实施例的停止进程的方法,可确定移动终端的锁屏时长,并根据锁屏时长确定本次处理时间,获取移动终端内当前运行的进程信息和对应的应用程序的联网情况,如果应用程序未联网,且达本次处理时间后,根据进程信息和应用程序的运行信息停止进程,能够从进程优先级、联网情况,以及锁屏时间等系统层面对锁屏期间活跃的应用程序进程进行管理,在不影响用户使用连续性的同时,停止用户感知度低的进程,以节省移动终端的电能,进而提升移动终端的续航时间。

需要说明的是,对于上述列出的作为处理判断条件的进程信息(例如ADJ为2、5、8、或ADJ大于9、或ADJ非2、非5、非8、非大于9但process state值为3)之外的其他进程信息对应的应用程序进程,可确定为系统服务和进程,不予处理。

为了实现上述实施例,本发明还提出一种停止进程的装置。

图8为根据本发明一个实施例的停止进程的装置的结构示意图。

如图8所示,根据本发明实施例的停止进程的装置,包括:确定模块10、获取模块20和控制模块30。

确定模块10用于确定处于锁屏状态的移动终端的锁屏时长,并根据所述锁屏时长确定本次处理时间。

在本发明的一个实施例中,确定模块10在移动终端开始进入锁屏状态时,可开始计时,得到锁屏时长。

本发明的实施例中,由于随着锁屏时长的不断增加,各个应用程序及其进程对用户的感知度越来越低。在移动终端刚进入锁屏时,用户对刚刚的使用状态,包括各种应用程序的感知存在比较深刻的印象,且用户存在短时内解锁再次进入操作系统的可能,因此,为了方便用户使用,可在锁屏后的短时间内(锁屏时长小于预设阈值),通过首次停包策略只清理掉那些用户感知度比较低的后台应用程序(如与用户不存交互在或存在很少交互的应用程序),而保留感知度较高的后台应用程序,防止用户很快解锁进入操作系统时,原本使用的应用程序被停止而打断用户使用的连续性。而随着锁屏时长的增长,用户对之前使用状态和感知度印象较深刻的进程的感知度逐渐降低,因此,在锁屏时长较长时,可通过深度停包策略对这部分后台进程进行清理,实现进程的深度清理。

因此,在本发明的实施例中,可根据锁屏时长制定不同的策略以停止后台进程。从而,在所述锁屏时长小于预设阈值时,保留用户感知度比较高的部分进程,在锁屏时长大于或等于预设阈值时,再对这部分进程进行深度清理。

相对应地,对于不同进程停止策略,进程停止的处理时间也不同,因此,可根据锁屏时长确定本次处理时间。具体地,如果所述锁屏时长小于预设阈值,则与锁屏起始时间相距第一预设时长后到达本次处理时间;如果所述锁屏时长大于或等于预设阈值,则直接确定到达本次处理时间,或者,与上次处理时间相距第二预设时长后到达本次处理时间。其中,若本次处理为首次处理,则直接确定到达本次处理时间,否则,在与上次处理时间相距第二预设时长后到达本次处理时间。其中,预设阈值可为系统默认设定或者由用户设定,例如,预设阈值可为30分钟。

在本发明的一个实施例中,第一预设时长可以是两分钟,第二预设时长可以是30分钟。需要说明的是,第一预设时长段与第二预设时长段的长度也可根据实际需求设置为其他长度,本发明对此不做限定。

本发明的实施例中,如果锁屏不满两分钟,对移动终端中的进程都不处理,预留出第一预设时长,以便应用程序或进程能够处理自身的遗留工作。

获取模块20用于获取所述移动终端内,当前运行的进程信息和所述进程对应的应用程序的联网情况。

在本发明的一个实施例中,进程的信息可包括进程的优先级信息和状态信息。

其中,优先级信息可以是移动终端的操作系统为进程分配的优先级信息。进程的优先级信息是操作系统根据进程的CPU时长、资源占用情况、活动状态等为进程设置的优先级。例如,优先级信息可以是ADJ(即oom_adj,Out Of Memory_adj,系统对于内存不足时对进程进行释放时优先释放权值)值,ADJ值越小优先级越低,表示对应的进程越重要,越不容易被释放,反之则越容易被释放。

进程的状态信息,表示进程间通信的状态,代表进程与公共服务之间的通信状态,举例来说,可通过ADJ中的process state进程状态值确定进程的状态信息。当process state=3时,表明存在进程间通信。

举例来说,如果所述锁屏时长小于预设阈值,且所述ADJ值是2,则确定所述进程与用户存在交互,例如有通知栏、悬浮窗、widget(桌面插件)等。如果所述锁屏时长大于或等于预设阈值,且所述ADJ值是2或7,则确定所述进程与用户存在交互。如果所述ADJ值是非2、非5、非8以及非大于等于9,且所述ADJ值的状态值(process state)是3,则确定进程与用户不存在交互,但存在进程间通信,即所述进程虽然与用户不存在交互,但该进程与公共服务或者其他进程存在通信的状态。如果所述ADJ值是5、8或大于等于9,则确定所述进程在使用CPU。其中,ADJ值为5的时候,表示进程可能没有上述通知栏、悬浮窗、widget等状态但是还在使用CPU,而当ADJ值更低,例如为8或9时,表示进程存在更弱,例如,间歇性的使用CPU等。

本发明的实施例中,应用程序的联网情况可根据应用程序在预设时间内的网络数据传输量来确定。其中,网络数据传输可包括上传和下载。如果所述应用程序在预设时间内的网络数据传输量小于预设值,则获取模块20可确定所述应用程序未联网。例如,如果在3秒内网络数据传输量小于10KB,则可确定应用程序未联网。

控制模块30用于在所述联网情况表明所述应用程序未联网,且,达到本次处理时间时,获取所述应用程序的运行信息,并根据所述进程信息和所述应用程序的运行信息,停止所述进程。

在本发明的一个实施例中,控制模块30可用于:根据所述进程信息和/或所述应用程序的运行信息,判断所述进程是否满足预设的过滤条件;如果所述进程满足预设的过滤条件,则根据所述应用程序的运行信息停止所述进程。

在本发明的一个实施例中,过滤条件可包括进程信息满足第一特征集合。

其中,进程信息满足第一特征集合是指进程的优先级信息表明进程在使用CPU。举例来说,当进程的优先级信息是ADJ值时,如果进程的ADJ值是5、8或大于等于9,则可确定该进程在使用CPU。

在本发明的另一个实施例中,过滤条件还可包括:进程信息满足第二特征集合,且不存在通知栏消息;或者,进程信息满足第三特征集合,且存在通知栏消息,所述通知栏消息不在通知栏白名单中。

其中,进程信息满足第二特征集合是指进程的优先级信息表明进程与用户存在交互。举例来说,当进程的优先级信息是ADJ值时,如果进程的ADJ值是2,则可确定所述进程与用户存在交互。

在本发明的实施例中,锁屏时长大于或等于预设阈值相对于锁屏时长小于预设阈值时,可清理更多的进程。因此,锁屏时长大于或等于预设阈值时的第二特征集合可更加严格。举例来说,如果锁屏时长小于预设阈值,仅将进程的ADJ值是2情况确定为进程与用户存在交互。如果锁屏时长大于或等于预设阈值,则将进程的ADJ值是2或7的情况均确定为进程与用户存在交互。从而,在锁屏时长较长时,可进一步停止在短时锁屏状态下未考虑停止的ADJ值是7的进程,实现进程的深度清理。

进程信息满足第三特征集合是指进程的状态信息表明进程与用户不存在交互,但存在进程间通信。举例来说,进程的优先级信息是ADJ值时,如果所述ADJ值是非2、非5、非8以及非大于等于9,且所述ADJ值的状态值是3,则可确定进程与用户不存在交互,但存在进程间通信。

其中,通知栏白名单可预先根据已知的需要停止的进程对应的应用程序的通知栏消息进行设定。也可在后续实际应用过程中对通知栏白名单进行更新。

在本发明的一个实施例中,所述到达本次处理时间,包括:如果所述锁屏时长小于预设阈值,则与锁屏起始时间相距第一预设时长后到达本次处理时间;如果所述锁屏时长大于或等于所述预设阈值,则直接确定到达本次处理时间,或者,与上次处理时间相距第二预设时长后到达本次处理时间。

在本发明的实施例中,为了能够在不影响用户使用的连续性的前提下,控制模块30可根据锁屏时长采取不同的策略停止后台进程。在不同的策略中,根据进程对应的应用程序的运行信息停止所述进程的策略也有所不同。

具体地,在本发明的一个实施例中,控制模块30可用于:在所述锁屏时长小于所述预设阈值,到达本次处理时间时,如果所述应用程序在与锁屏起始时间相距第一预设时长后产生运行信息,则判断所述应用程序是否在应用程序黑名单中,如果在,则停止所述进程。

在本发明的一个实施例中,控制模块30可用于:在所述锁屏时长大于或等于预设阈值,到达本次处理时间时,如果所述应用程序在与锁屏起始时间相距所述第二预设时长后产生运行信息,则判断所述应用程序是否在应用程序的第一白名单中,如果不在,则停止所述进程。

由于一些应用程序的进程在被停止后,可自行再次启动。因此,在本发明的实施例中,在锁屏时长大于第二预设时长时,可通过重复执行深度停包策略,以停止自行重启的应用程序的进程。深度停包策略的重复周期可根据大多已知的自行重启的应用程序的重启周期进行设定。例如,可设定每隔半个小时执行一次深度停包策略。

此外,由于大多数应用程序的自行重启策略是在重启多次后不再重启,因此,可在深度停包策略重复执行一定次数后,停止深度停包策略。图9为根据本发明另一个实施例的停止进程的装置的结构示意图。如图9所示,在图8所示实施例的基础上还可包括:第一判断模块40。

其中,第一判断模块40用于判断已处理次数是否小于预设次数,以便在小于时,确定本次处理时间及其后续步骤。

控制模块30用于在所述已处理次数大于或等于预设次数时,结束流程。

从而能够有效针对自行重启的应用程序的进程进行停止处理,进一步节省移动终端电量。

进一步地,为了避免误将应用程序白名单中的应用程序对应的进程停止,可在停止进程前判断进程对应的应用程序是否在预设的第二白名单中。其中,第二白名单为系统应用程序的名单,从而可避免误将系统进程做停止处理,影响用户体验。图10为根据本发明另一个实施例的停止进程的装置的结构示意图。如图10所示,在图8所示实施例的基础上还可包括:第二判断模块50。

第二判断模块50用于在停止所述进程之前,判断所述进程对应的应用程序是否在应用程序的第二白名单中。

控制模块30用于在所述进程不在所述第二白名单中时,停止所述进程。

由此,可避免误将系统进程做停止处理,影响用户体验。

本发明实施例的停止进程的装置,可确定移动终端的锁屏时长,并根据锁屏时长确定本次处理时间,获取移动终端内当前运行的进程信息和对应的应用程序的联网情况,如果应用程序未联网,且达本次处理时间后,根据进程信息和应用程序的运行信息停止进程,能够从进程优先级、联网情况,以及锁屏时间等系统层面对锁屏期间活跃的应用程序进程进行管理,在不影响用户使用连续性的同时,停止用户感知度低的进程,以节省移动终端的电能,进而提升移动终端的续航时间。

本发明还提出一种移动终端。

根据本发明实施例的移动终端,包括:壳体、处理器、存储器、电路板和电源电路,其中,所述电路板安置在所述壳体围成的空间内部,所述处理器和所述存储器设置在所述电路板上;所述电源电路,用于为所述移动终端的各个电路或器件供电;所述存储器用于存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于:确定处于锁屏状态的移动终端的锁屏时长,并根据所述锁屏时长确定本次处理时间;获取所述移动终端内,当前运行的进程信息和所述进程对应的应用程序的联网情况;如果所述联网情况表明所述应用程序未联网,且,达到本次处理时间后,获取所述应用程序的运行信息,并根据所述进程信息和所述应用程序的运行信息,停止所述进程。

更近一步地,本发明实施例的移动终端中的处理器,可进一步用于执行本发明图1-图7任一实施例的进程停止的方法。

根据本发明实施例的移动终端,可确定移动终端的锁屏时长,并根据锁屏时长确定本次处理时间,获取移动终端内当前运行的进程信息和对应的应用程序的联网情况,如果应用程序未联网,且达本次处理时间后,根据进程信息和应用程序的运行信息停止进程,能够从进程优先级、联网情况,以及锁屏时间等系统层面对锁屏期间活跃的应用程序进程进行管理,在不影响用户使用连续性的同时,停止用户感知度低的进程,以节省移动终端的电能,进而提升移动终端的续航时间。

图11是根据一示例性实施例示出的一种移动终端装置800的框图。例如,装置800可以是移动电话,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

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

处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件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,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。

在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

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

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

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

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