应用程序的控制方法、装置、存储介质及终端与流程

文档序号:14249313阅读:163来源:国知局
应用程序的控制方法、装置、存储介质及终端与流程

本申请实施例涉及终端技术领域,尤其涉及应用程序的控制方法、装置、存储介质及终端。



背景技术:

随着终端技术的快速发展,应用程序越来越多样化,终端中安装的应用程序也越来越多。

然而,终端开机或使用的过程中,一些应用程序经常会开机自启动或后台自启动。还可能通过启动服务(startservice)或绑定服务(bindservice)等方式,因被其它应用调用而关联启动。大多数情况下,这些应用程序并非用户希望启动的应用程序,其在后台偷偷地进行各种对用户有影响的行为。比如,某些第三方应用在用户不知情的情况下进行数据上传或下载,使用了智能终端的系统资源,占用了网络带宽,影响了智能终端的处理速度、功耗等性能。甚至,一些自启动的应用程序,如流氓应用,还可能带来安全隐患。



技术实现要素:

本申请实施例提供应用程序的控制方法、装置、存储介质及终端,可以对应用程序进行有效的控制管理。

第一方面,本申请实施例提供了一种应用程序的控制方法,包括:

监控终端后台运行的应用程序,获取非用户触发启动的应用程序;

当检测到非用户触发启动的应用程序时,获取所述终端当前的应用场景信息;

根据预先存储的应用场景与应用程序的对应关系及所述终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行。

第二方面,本申请实施例提供了一种应用程序的控制装置,包括:

应用程序监控模块,用于监控终端后台运行的应用程序,获取非用户触发启动的应用程序;

应用场景信息获取模块,用于当检测到非用户触发启动的应用程序时,获取所述终端当前的应用场景信息;

第一控制模块,用于根据预先存储的应用场景与应用程序的对应关系及所述终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行。

第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例第一方面所述的应用程序的控制方法。

第四方面,本申请实施例提供了一种终端,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请实施例第一方面所述的应用程序的控制方法。

本申请实施例中提供的应用程序的控制方案,通过监控终端后台运行的应用程序,当检测到非用户触发启动的应用程序时,获取终端当前的应用场景信息,并根据预先存储的应用场景与应用程序的对应关系及终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行,可以有效的管控终端后台非用户触发的应用程序的关闭或维持运行情况,减少流氓应用程序使自己的进程常驻的情况发生,从而,减少使用终端资源的应用,提高处理速度,同时降低了终端功耗,提高终端的续航时间。

附图说明

图1为本申请实施例提供的一种应用程序的控制方法的流程示意图;

图2为本申请实施例提供的另一种应用程序的控制方法的流程示意图;

图3为本申请实施例提供的又一种应用程序的控制方法的流程示意图;

图4为本申请实施例提供的一种应用程序的控制装置的结构示意图;

图5为本申请实施例提供的一种终端的结构框图;

图6是本申请实施例提供的一种终端的结构示意图。

具体实施方式

下面结合附图并通过具体实施方式来进一步说明本申请的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。

在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

图1为本申请实施例提供的一种应用程序的控制方法的流程示意图,该方法可以应用程序的控制装置执行,其中该装置可由软件和/或硬件实现,一般可集成在终端中。如图1所示,该方法包括:

步骤101、监控终端后台运行的应用程序,获取非用户触发启动的应用程序。

在本申请实施例中,通常在终端后台会有多个应用程序一直处于运行状态,其中,后台运行的应用程序包括用户主动触发运行的应用程序和非用户主动触发运行的应用程序。非用户主动触发运行的应用程序又包含两类情况:自启动的应用程序和关联启动的应用程序。其中,自启动的应用程序可以是通过接收广播的形式进行自启动,例如,注册为广播接收者的应用程序接收到系统的广播通知时,进行自启动。自启动的应用程序也可以是通过读取通知权限的方式进行自启动,例如,应用查杀自启动,即当应用程序被查杀清理后通过读取通知权限的方式接收到系统有通知变化时又重新自启动,又如,主动通知自启动,即当用户主动打开应用程序的读取通知权限时,应用程序自启动。自启动的应用程序还可以是开机自启动或多用户切换自启动,其中,多用户切换自启动可以理解为同一终端可以供多个用户使用,每个用户均设置有自己需要的应用程序,当多用户切换使用的过程中,应用程序进行自启动。关联启动的应用程序是指当某个应用程序启动时,其他应用程序也随之启动,即被其他应用程序发出的通知产生了关联启动,如通过启动服务(startservice)或绑定服务(bindservice)等方式,因被其它应用调用而关联启动。

这些后台运行的应用程序,尤其是非用户触发的应用程序,大多数情况下,这些应用程序并非用户希望启动运行的应用程序,这些应用程序在后台偷偷运行,一直使用终端的系统资源,占用网络带宽,出现终端的处理速度变慢、网络速度变慢或耗电量增加等影响终端性能的问题。甚至,一些应用程序在后台运行的过程中唤醒其他第三方应用,使用户在不知情的情况下,被一些流氓应用所利用,不利于用户的使用体验和系统的安全保障。

因此,监控终端后台运行的应用程序,获取非用户触发的应用程序。可选的,获取用户触发启动的应用程序的操作链路,根据操作链路确定由应用程序关联启动的被调用应用程序;将被调用应用程序在操作链路中的层号与预设层号阈值进行比较,将层号超过预设层号阈值的被调用应用程序作为非用户触发启动的应用程序,其中,该被调用应用程序可以是在后台运行的应用程序,操作链路包括按照调用与被调用关系对应用程序和被调用应用程序进行排序构成的序列,并将序列中各个应用程序的序号作为层号。这样设置的好处在于,不仅可以有效保证用户触发的应用程序的正常运行,而且还可以有效地清理与用户触发的应用程序的正常运行无关的应用程序,减少使用终端资源的应用,提高处理速度,同时降低终端功耗,提高终端的续航时间。

示例性的,用户手动触发应用程序a启动,相应的,在应用程序a启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序b因被应用程序a调用而关联启动;在应用程序b启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序c因被应用程序b调用而关联启动;在应用程序c启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序d因被应用程序c调用而关联启动;在应用程序d启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序e因被应用程序d调用而关联启动。即用户触发启动的应用程序a的操作链路为:应用程序a->应用程序b->应用程序c->应用程序d->应用程序e。该操作链路中由应用程序a关联启动的被调用应用程序分别为:应用程序b、应用程序c、应用程序d和应用程序e。将用户触发启动的应用程序a和各个被调用应用程序进行排序构成序列,将所述序列中各个应用程序的序号作为层号。其中,应用程序a、应用程序b、应用程序c、应用程序d和应用程序e对应的层号分别为0、1、2、3和4。例如,设定层号阈值为2,则将层号大于2的被调用应用程序确定为非用户触发启动的应用程序。即将层号为3的应用程序d和层号为4的应用程序e确定为非用户触发启动的应用程序。

又示例性的,用户手动触发应用程序a启动,相应的,在应用程序a启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序b和应用程序c因被应用程序a调用而关联启动;在应用程序b启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序d因被应用程序b调用而关联启动;在应用程序c启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序e和应用程序f因被应用程序c调用而关联启动;在应用程序d启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序g因被应用程序d调用而关联启动;在应用程序e启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序h因被应用程序e调用而关联启动;在应用程序g启动时,通过启动服务(startservice)或绑定服务(bindservice)等方式,应用程序l因被应用程序g调用而关联启动。即用户针对应用程序a的操作链路包括三个操作链路,分别为第一操作链路:应用程序a->应用程序b->应用程序d->应用程序g->应用程序l;第二操作链路:应用程序a->应用程序c->应用程序e->应用程序h;第三操作链路:应用程序a->应用程序c->应用程序f。第一操作链路中由应用程序a触发启动的被调用应用程序(也可以称为目标应用程序)分别为:应用程序b、应用程序d、应用程序g和应用程序l,其中,应用程序b、应用程序d、应用程序g和应用程序l对应的层号分别为1、2、3和4。第二操作链路中由应用程序a触发启动的被调用应用程序分别为:应用程序c、应用程序e和应用程序h,其中,应用程序c、应用程序e和应用程序h对应的层号分别为1、2和3。第三操作链路中由应用程序a触发启动的被调用应用程序分别为:应用程序c和应用程序f,其中,应用程序c和应用程序f对应的层号分别为1和2。例如,设定层号阈值为1,则将层号大于1的被调用应用程序确定为非用户触发启动的应用程序。即将层号为2的应用程序d、应用程序e和应用程序f,层号为3的应用程序g和应用程序h,以及层号为4的应用程序l全部确定为非用户触发启动的应用程序。

需要说明的是,本申请实施例对应用程序的操作链路生成的过程中,每个应用程序的关联启动的应用程序的个数不作限定,关联启动的应用程序的层号不作限定。

步骤102、当检测到非用户触发启动的应用程序时,获取终端当前的应用场景信息。

在本申请实施例中,当检测存在非用户触发启动的应用程序时,获取终端当前的应用场景信息。因为,在不同的应用场景下,不同的非用户触发启动的应用程序对用户使用的影响程度不同。其中,应用场景信息可以包括:时间信息、电量信息、网络连接信息、位置信息、是否充电中的至少一种。

可选的,根据终端的时间信息确定非用户触发启动的应用程序使用时间类别,其中,使用时间类别可以包括第一时间类别和第二时间类别。可选的,根据由终端的时间信息确定的非用户触发启动的应用程序的使用日期,获取第一时间类别,其中,第一时间类别可以包括:工作日及节假日;根据由终端的时间信息确定的非用户触发启动的应用程序的使用时间段,获取第二时间类别,其中,第二时间类别可以包括:早高峰、午间、晚高峰、工作时间以及休息时间;将第一时间类别以及第二时间类别的组合作为非用户触发启动的应用程序的使用时间类别。可选的,第二时间类别还可以包括白天、傍晚以及休息时间。当然,第二时间类别也可以对一天24小时0:00-24:00进行均等划分,如划分为6个时间段,每个时间段时长为4小时。其中,第二时间类别可以通过时间戳的形式进行记载。

可选的,电量信息可以分为高、中、低三档;网络连接信息可以分为家庭网络、工作网络或移动流量网络;位置信息可以分为在家和不在家,也可以分为在公交或地铁上和不在公交地铁上。

在本申请实施例中,不同的状态信息可以通过不同的形式进行表示,例如可以采用文字的形式表示,也可以采用标识信息的形式表示,其中,标识信息为与状态信息的类别对应的数值。示例性的,电量信息分为高、中、低三档,电量信息为高时用0表示,电量信息为中时用1表示,电量信息为低时用2表示;位置信息可以分为在家和不在家两种情况,在家用0表示,不在家用1表示。

步骤103、根据预先存储的应用场景与应用程序的对应关系及终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行。

在本申请实施例中,根据预先存储的应用场景与应用程序的对应关系及终端当前的应用场景信息,控制非用户触发启动的应用程序关闭,或者,控制非用户触发启动的应用程序继续维持运行。

可选的,根据预先存储的应用场景与应用程序的对应关系,确定与终端当前的应用场景信息对应的至少一个第一应用程序,将第一应用程序作为第一集合;将非用户触发启动的应用程序作为第二集合;确定第二集合中不属于第一集合的第二应用程序;控制第一应用程序维持运行,关闭第二应用程序。

示例性的,根据预先存储的应用场景与应用程序的对应关系,查找与终端当前的应用场景信息对应的至少一个第一应用程序,并将一个或多个第一应用程序作为第一集合。其中,第一应用程序属于步骤101中获取的非用户触发启动的应用程序。同时,将非用户触发启动的应用程序标记为第二集合,并确定第二集合中不属于第一集合的第二应用程序,并控制第一应用程序维持运行,关闭第二应用程序。其中,第二应用程序可以为一个,也可以为多个。可以理解的是,预先存储的应用场景与应用程序的对应关系为一个白名单,在该白名单中存储了各个应用场景对应的应用程序。该白名单中各个应用场景对应的应用程序为在相应场景下,允许非用户触发启动的应用程序继续维持运行状态的应用程序。第一应用程序属于该白名单中终端当前应用场景信息对应的应用程序,即第一应用程序为非用户触发启动的应用程序中允许继续维持运行状态的应用程序。而第二应用程序为非用户触发启动的应用程序中禁止继续维持运行状态的应用程序,因此,控制第一应用程序维持运行,同时将第二应用程序关闭。

其中,预先存储的应用场景与应用程序的对应关系可以是对用户样本的历史使用习惯及对应的场景信息进行统计或学习而生成制定的。用户样本的选择可以是本机用户在设定时间区间内的历史使用数据及历史使用数据对应的场景信息,还可以是设定数量满足设定条件的用户群体在设定时间区间内的历史使用数据及对应的场景信息。例如,服务器获取本机用户一个月内的历史使用数据,将该历史使用数据及所述历史使用数据对应的场景信息作为用户样本,采用机器学习模型对该用户样本进行学习,预测用户在不同应用场景下可能使用的应用程序。根据不同应用场景下可能使用的应用程序,生成应用场景与应用程序的对应关系,以便根据终端当前的应用场景信息确定允许继续维持运行的应用程序。应用场景与应用程序的对应关系生成后,由服务器推送至终端。需要说明的是,该应用场景与应用程序的对应关系还可以由用户选择。该应用场景与应用程序的对应关系可以以文件方式存储在终端本地或云端服务器,还可以以数据库方式存储在终端本地或云端服务器。

本申请实施例提供的技术方案,监控终端后台运行的应用程序,当检测到非用户触发启动的应用程序时,获取终端当前的应用场景信息,并根据预先存储的应用场景与应用程序的对应关系及终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行,可以有效的管控终端后台非用户触发的应用程序的关闭或维持运行情况,减少流氓应用程序使自己的进程常驻的情况发生,从而,减少使用终端资源的应用,提高处理速度,同时降低了终端功耗,提高终端的续航时间。

在一些实施例中,在关闭第二应用程序之后,还可以包括:获取终端的电量信息,根据电量信息匹配第一关闭策略,其中,第一关闭策略为将终端的剩余电量设定为至少两个等级,为不同等级匹配耗电值范围,关闭当前剩余电量所属等级对应的应用程序;获取第一应用程序的耗电信息;根据耗电信息对第一应用程序进行排序,根据排序结果及第一关闭策略控制第一应用程序关闭或维持运行。这样设置的好处在于,可以有效降低终端功耗,提高终端的续航时间。

其中,终端的电量信息是指终端当前剩余电量的多少。应用程序的耗电信息是指应用程序运行时,消耗电量的多少。

在本申请实施例中,获取非用户触发启动的各个应用程序的当前应用场景信息对应的第一应用程序的耗电信息,并根据所述耗电信息对对应的第一应用程序进行排序。例如,可以按照第一应用程序的耗电信息由大到小的顺序对各个第一应用程序排序。根据排序结果及第一关闭策略控制第一应用程序关闭或维持运行。其中,第一关闭策略为将终端的剩余电量设定为至少两个等级,为不同等级匹配应用程序的耗电值范围,关闭当前剩余电量所属等级对应的应用程序。示例性的,将终端的剩余电量设定为高、中和低三个等级,不同等级匹配应用程序的耗电值的范围不同。例如,终端的剩余电量为高时,匹配第一应用程序的耗电值的范围最大;终端的剩余电量为中时,匹配第一应用程序的耗电值的范围次之;终端的剩余电量为低时,匹配第一应用程序的耗电值的范围最小。例如,按照第一应用程序的耗电信息由大到小的顺序对非用户触发启动的各个第一应用程序排序,得到排序结果后,若当前终端的剩余电量为高时,关闭第一预设排序位置前对应的应用程序,如关闭应用程序耗电信息最高的前3个应用程序;若当前终端的剩余电量为中时,关闭第二预设排序位置前对应的应用程序,如关闭应用程序耗电信息最高的前5个应用程序;若当前终端的剩余电量为低时,关闭第三预设排序位置前对应的应用程序,如关闭应用程序耗电信息最高的前8个应用程序。

在一些实施例中,在关闭第二应用程序之后,还可以包括:获取非用户触发启动的应用程序中的第一应用程序的类型;根据类型确定第一应用程序中的弹窗广告类应用程序;关闭弹窗广告类应用程序。

示例性的,获取第一集合中的第一应用程序的类型。可以理解的是,获取第一集合中的第一应用程序的类型,是便于进一步判断第一应用程序中是否存在弹窗广告类的应用程序。其中,弹窗广告类应用程序是指在系统后台运行并在满足设定条件时弹出弹窗显示广告的应用程序。当第一应用程序中存在弹窗广告类应用程序时,将该弹窗广告类应用程序关闭。因为弹窗广告类应用程序在后台运行时,不仅占用系统资源,占用网络带宽,影响终端的处理速度、功耗性能,而且还会经常不定时地弹出弹窗显示广告,使用户不小心误触弹出的弹窗显示广告,浪费用户流量,严重影响了用户体验。因此,这样设置的好处在于,不仅可以减少使用终端资源的应用,提高处理速度,同时降低终端功耗,提高终端的续航时间,而且还可以提高用户使用终端的体验,节省用户流量。

在一些实施例中,还可以包括:获取终端的cpu使用率,根据cpu使用率匹配第二关闭策略,其中,第二关闭策略为将终端的cpu使用率设定为至少两个等级,为不同等级匹配应用程序的cpu使用率范围,关闭当前cpu使用率所属等级对应的应用程序;获取非用户触发启动的应用程序的cpu使用率;根据cpu使用率对非用户触发启动的应用程序进行排序,根据排序结果及第二关闭策略控制非用户触发启动的应用程序关闭或维持运行。这样设置的好处在于,可以有效地降低终端的cpu使用率,提高终端处理速度。

其中,终端的cpu使用率就是指终端中所有运行的应用程序占用cpu的总的资源的多少,终端的cpu使用率越高,终端中所有运行的应用程序占用cpu的总资源越多,此时,终端的响应速度就会越慢;反之,终端的cpu使用率越低,终端中所有运行的应用程序占用cpu的总资源越少,此时,终端的响应速度就会越快。应用程序的cpu使用率是指应用程序运行时,所占用cpu的资源的多少。其中,应用程序的cpu使用率越高,表示该应用程序运行时占用cpu的资源越多;应用程序的cpu使用率越低,表示该应用程序运行时占用cpu的资源越少。

在本申请实施例中,获取非用户触发启动的各个应用程序的cpu使用率,并根据所述使用率对对应的非用户触发启动的应用程序进行排序。例如,可以按照应用程序的cpu使用率由大到小的顺序对各个非用户触发启动的应用程序排序。根据排序结果及第二关闭策略控制非用户触发启动的应用程序关闭或维持运行。其中,第二关闭策略为将终端的cpu使用率设定为至少两个等级,为不同等级匹配应用程序的cpu使用率范围,关闭当前cpu使用率所属等级对应的应用程序。示例性的,将终端的cpu使用率设定为高、中和低三个等级,不同等级匹配应用程序的cpu使用率范围不同。例如,终端的cpu使用率为高时,匹配应用程序的cpu使用率范围最大;终端的cpu使用率为中时,匹配应用程序的cpu使用率范围次之;终端的cpu使用率为低时,匹配应用程序的cpu使用率范围最小。例如,按照应用程序的cpu使用率由大到小的顺序对各个非用户触发启动的应用程序排序,得到排序结果后,若当前终端的cpu使用率为高时,关闭第四预设排序位置前对应的应用程序,如关闭应用程序使用率最高的前2个应用程序;若当前终端的cpu使用率为中时,关闭第五预设排序位置前对应的应用程序,如关闭应用程序使用率最高的前4个应用程序;若当前终端的cpu使用率为低时,关闭第六预设排序位置前对应的应用程序,如关闭应用程序使用率最高的前7个应用程序。

在一些实施例中,还可以包括:统计各个非用户触发启动的应用程序下载的数据量;关闭数据量占用的存储空间超过预设阈值的应用程序。这样设置的好处在于,可以有效地减少终端存储空间的占用量,降低终端功耗,提高处理速度。

其中,应用程序在后台运行的过程中会下载相关的数据信息,不同应用程序下载的数据信息的内容不同,数据量大小也不同。其中,数据量越大,占用的存储空间越大。统计各个非用户触发启动的应用程序下载的数据量,根据数据量的大小,或数据量占用存储空间的大小,确定非用户触发启动的应用程序关闭或者维持运行。示例性的,关闭数据量占用的存储空间超过预设阈值的应用程序,或者直接关闭数据量超过设定大小阈值的应用程序。也可以对终端当前剩余的可用存储空间及各个非用户触发启动的应用程序的数据量,或数据量占用的存储空间,进行综合分析、判断,以确定各个非用户触发启动的应用程序是继续维持运行还是使其关闭。示例性的,将终端当前剩余的可用存储空间设置为高、中、低三档。当终端当前剩余的可用存储空间为高时,即可用存储空间很大时,关闭数据量占用的存储空间超过第一预设阈值的应用程序;当终端当前剩余的可用存储空间为中时,即可用存储空间较大时,关闭数据量占用的存储空间超过第二预设阈值的应用程序;当终端当前剩余的可用存储空间为低时,即可用存储空间较小时,关闭数据量占用的存储空间超过第三预设阈值的应用程序。其中,第一预设阈值、第二预设阈值及第三预设阈值的大小依次递减。

图2为本申请实施例提供的应用程序的控制方法的流程示意图。如图2所示,该方法包括:

步骤201、获取用户触发启动的应用程序的操作链路,根据操作链路确定由所述应用程序关联启动的被调用应用程序。

其中,该被调用应用程序可以是由用户触发启动的应用程序关联启动的在终端后台运行的应用程序。

步骤202、将被调用应用程序在操作链路中的层号与预设层号阈值进行比较,将层号超过预设层号阈值的被调用应用程序作为非用户触发启动的应用程序。

其中,操作链路包括按照调用与被调用关系对应用程序和被调用应用程序进行排序构成的序列,并将序列中各个应用程序的序号作为层号。

步骤203、当检测到非用户触发启动的应用程序时,获取终端当前的应用场景信息。

步骤204、根据预先存储的应用场景与应用程序的对应关系,确定与终端当前的应用场景信息对应的至少一个第一应用程序,将第一应用程序作为第一集合。

步骤205、将非用户触发启动的应用程序作为第二集合,确定第二集合中不属于第一集合的第二应用程序,并控制第一应用程序维持运行,关闭第二应用程序。

其中,可以理解的是,第二应用程序为非用户触发启动的应用程序中不属于第一集合的应用程序。

步骤206、获取终端的电量信息,根据电量信息匹配第一关闭策略。

其中,第一关闭策略为将终端的剩余电量设定为至少两个等级,为不同等级匹配耗电值范围,关闭当前剩余电量所属等级对应的应用程序;

步骤207、获取第一应用程序的耗电信息。

步骤208、根据耗电信息对第一应用程序进行排序,根据排序结果及第一关闭策略控制第一应用程序关闭或维持运行。

步骤209、获取非用户触发启动的应用程序中的第一应用程序的类型。

步骤210、根据类型确定第一应用程序中的弹窗广告类应用程序。

步骤211、关闭弹窗广告类应用程序。

需要说明的是,步骤206-步骤208,与步骤209-步骤211可以分别看作是两个不同的整体执行方案,可以选择性的执行其中一种,即只执行步骤206-步骤208,而不执行步骤209-步骤211,也可以只执行步骤209-步骤211,而不执行步骤206-步骤208。还可以两个整体方案均执行,即步骤206-步骤208,与步骤209-步骤211均执行。

本申请实施例提供的技术方案,根据预先存储的应用场景与应用程序的对应关系及终端当前的应用场景信息,控制后台运行的非用户触发启动的应用程序关闭或维持运行,并进一步根据终端的电量信息及应用程序的耗电量和/或应用程序的类型,再次控制当前应用场景信息对应的应用程序的关闭或维持运行,可以进一步有效的管控终端后台非用户触发的应用程序的关闭或维持运行情况,减少使用终端资源的应用,提高处理速度,同时降低了终端功耗,提高终端的续航时间。

图3为本申请实施例提供的应用程序的控制方法的流程示意图。如图3所示,该方法包括:

步骤301、监控终端后台运行的应用程序,获取非用户触发启动的应用程序。

步骤302、当检测到非用户触发启动的应用程序时,获取终端的cpu使用率,根据cpu使用率匹配第二关闭策略。

其中,第二关闭策略为将终端的cpu使用率设定为至少两个等级,为不同等级匹配应用程序的cpu使用率范围,关闭当前cpu使用率所属等级对应的应用程序。

步骤303、获取非用户触发启动的应用程序的cpu使用率。

步骤304、根据cpu使用率对非用户触发启动的应用程序进行排序,根据排序结果及第二关闭策略控制非用户触发启动的应用程序关闭或维持运行。

步骤305、统计各个非用户触发启动的应用程序下载的数据量。

步骤306、关闭数据量占用的存储空间超过预设阈值的应用程序。

步骤307、获取终端当前的应用场景信息。

步骤308、根据预先存储的应用场景与应用程序的对应关系,确定与终端当前的应用场景信息对应的至少一个第一应用程序,并将第一应用程序作为第一集合。

步骤309、将非用户触发启动的应用程序作为第二集合,确定第二集合中不属于第一集合的第二应用程序,并控制第一应用程序维持运行,关闭第二应用程序。

其中,第二应用程序为当前正在运行的非用户触发启动的应用程序中不属于第一集合的应用程序。

步骤310、获取终端的电量信息,根据电量信息匹配第一关闭策略。

其中,第一关闭策略为将终端的剩余电量设定为至少两个等级,为不同等级匹配耗电值范围,关闭当前剩余电量所属等级对应的应用程序。

步骤311、获取第一应用程序的耗电信息。

步骤312、根据耗电信息对第一应用程序进行排序,根据排序结果及第一关闭策略控制第一应用程序关闭或维持运行。

步骤313、获取非用户触发启动的应用程序中的第一应用程序的类型。

步骤314、根据类型确定第一应用程序中的弹窗广告类应用程序。

步骤315、关闭弹窗广告类应用程序。

需要说明的是,步骤302-步骤304,与步骤305-步骤306可以分别看作是两个不同的整体执行方案,可以选择性的执行其中一种,即只执行步骤302-步骤304,而不执行步骤305-步骤306,也可以只执行步骤302-步骤304,而不执行步骤305-步骤306。还可以两个整体方案均执行,即步骤302-步骤304,与步骤305-步骤306均执行。

同时,需要说明的是,步骤310-步骤312,与步骤313-步骤315可以分别看作是两个不同的整体执行方案,可以选择性的执行其中一种,即只执行步骤310-步骤312,而不执行步骤313-步骤315,也可以只执行步骤310-步骤312,而不执行步骤313-步骤315。还可以两个整体方案均执行,即步骤310-步骤312,与步骤313-步骤315均执行。

另外,需要说明的是,也可以先执行步骤302-步骤306,后执行步骤310-步骤315,本申请实施例对此不作限定。

本申请实施例提供的技术方案,可以进一步有效的管控终端后台非用户触发的应用程序的关闭或维持运行情况,减少使用终端资源的应用,提高处理速度,同时降低了终端功耗,提高终端的续航时间。

图4为本申请实施例提供的一种应用程序的控制装置的结构示意图,该装置可由软件和/或硬件实现,一般集成在终端中,可通过执行应用程序的控制方法来控制非用户触发启动的应用程序关闭或维持运行。如图4所示,该装置包括:

应用程序监控模块401,用于监控终端后台运行的应用程序,获取非用户触发启动的应用程序;

应用场景信息获取模块402,用于当检测到非用户触发启动的应用程序时,获取所述终端当前的应用场景信息;

第一控制模块403,用于根据预先存储的应用场景与应用程序的对应关系及所述终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行。

本申请实施例提供的应用程序的控制装置,监控终端后台运行的应用程序,当检测到非用户触发启动的应用程序时,获取终端当前的应用场景信息,并根据预先存储的应用场景与应用程序的对应关系及终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行,可以有效的管控终端后台非用户触发的应用程序的关闭或维持运行情况,减少流氓应用程序使自己的进程常驻的情况发生,从而,减少使用终端资源的应用,提高处理速度,同时降低了终端功耗,提高终端的续航时间。

可选的,所述应用程序监控模块,用于:

获取用户触发启动的应用程序的操作链路,根据所述操作链路确定由所述应用程序关联启动的被调用应用程序,其中,所述被调用应用程序在终端后台运行;

将所述被调用应用程序在所述操作链路中的层号与预设层号阈值进行比较,将层号超过所述预设层号阈值的被调用应用程序作为非用户触发启动的应用程序,其中,所述操作链路包括按照调用与被调用关系对所述应用程序和被调用应用程序进行排序构成的序列,并将所述序列中各个应用程序的序号作为所述层号。

可选的,所述应用程序控制模块,用于:

根据预先存储的应用场景与应用程序的对应关系,确定与所述终端当前的应用场景信息对应的至少一个第一应用程序,将所述第一应用程序作为第一集合;

将所述非用户触发启动的应用程序作为第二集合;

确定所述第二集合中不属于所述第一集合的第二应用程序;

控制所述第一应用程序维持运行,关闭所述第二应用程序。

可选的,所述装置还包括:

电量信息匹配模块,用于在关闭所述第二应用程序之后,获取所述终端的电量信息,根据所述电量信息匹配第一关闭策略,其中,所述第一关闭策略为将终端的剩余电量设定为至少两个等级,为不同等级匹配耗电值范围,关闭当前剩余电量所属等级对应的应用程序;

耗电信息获取模块,用于获取第一应用程序的耗电信息;

第二控制模块,用于根据所述耗电信息对所述第一应用程序进行排序,根据排序结果及所述第一关闭策略控制所述第一应用程序关闭或维持运行。

可选的,所述装置还包括:

应用程序类型获取模块,用于在关闭所述第二应用程序之后,获取所述非用户触发启动的应用程序中的第一应用程序的类型;

应用程序确定模块,用于根据所述类型确定所述第一应用程序中的弹窗广告类应用程序;

第一关闭模块,用于关闭所述弹窗广告类应用程序。

可选的,所述装置还包括:

cpu使用率匹配模块,用于获取所述终端的cpu使用率,根据所述cpu使用率匹配第二关闭策略,其中,所述第二关闭策略为将终端的cpu使用率设定为至少两个等级,为不同等级匹配应用程序的cpu使用率范围,关闭当前cpu使用率所属等级对应的应用程序;

cup使用率获取模块,用于获取非用户触发启动的应用程序的cpu使用率;

第三控制模块,用于根据所述cpu使用率对非用户触发启动的应用程序进行排序,根据排序结果及所述第二关闭策略控制非用户触发启动的应用程序关闭或维持运行。

可选的,所述装置还包括:

数据量统计模块,用于统计各个所述非用户触发启动的应用程序下载的数据量;

第二关闭模块,用于关闭所述数据量占用的存储空间超过预设阈值的所述应用程序。

本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行应用程序的控制方法,该方法包括:

监控终端后台运行的应用程序,获取非用户触发启动的应用程序;

当检测到非用户触发启动的应用程序时,获取所述终端当前的应用场景信息;

根据预先存储的应用场景与应用程序的对应关系及所述终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行。

存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如cd-rom、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如dram、ddrram、sram、edoram,兰巴斯(rambus)ram等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。

当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的应用程序的控制操作,还可以执行本申请任意实施例所提供的应用程序的控制方法中的相关操作。

本申请实施例提供了一种终端,该终端中可集成本申请实施例提供的应用程序的控制装置。图5为本申请实施例提供的一种终端的结构框图。如图5所示,终端500可以包括:存储器501,处理器502及存储在存储器上并可在处理器运行的计算机程序,所述处理器502执行所述计算机程序时实现如本申请实施例所述的应用程序的控制方法。

本申请实施例提供的终端,监控终端后台运行的应用程序,当检测到非用户触发启动的应用程序时,获取终端当前的应用场景信息,并根据预先存储的应用场景与应用程序的对应关系及终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行,可以有效的管控终端后台非用户触发的应用程序的关闭或维持运行情况,减少流氓应用程序使自己的进程常驻的情况发生,从而,减少使用终端资源的应用,提高处理速度,同时降低了终端功耗,提高终端的续航时间。

图6为本申请实施例提供的又一种终端的结构示意图,如图6所示,该终端可以包括:壳体(图中未示出)、存储器601、中央处理器(centralprocessingunit,cpu)602(又称处理器,以下简称cpu)、电路板(图中未示出)和电源电路(图中未示出)。所述电路板安置在所述壳体围成的空间内部;所述cpu602和所述存储器601设置在所述电路板上;所述电源电路,用于为所述终端的各个电路或器件供电;所述存储器601,用于存储可执行程序代码;所述cpu602通过读取所述存储器601中存储的可执行程序代码来运行与所述可执行程序代码对应的计算机程序,以实现以下步骤:

监控终端后台运行的应用程序,获取非用户触发启动的应用程序;

当检测到非用户触发启动的应用程序时,获取所述终端当前的应用场景信息;

根据预先存储的应用场景与应用程序的对应关系及所述终端当前的应用场景信息,控制非用户触发启动的应用程序关闭或维持运行。

所述终端还包括:外设接口603、rf(radiofrequency,射频)电路605、音频电路606、扬声器611、电源管理芯片608、输入/输出(i/o)子系统609、其他输入/控制设备610、触摸屏612、其他输入/控制设备610以及外部端口604,这些部件通过一个或多个通信总线或信号线607来通信。

应该理解的是,图示终端600仅仅是终端的一个范例,并且终端600可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。

下面就本实施例提供的用于应用程序控制的终端进行详细的描述,该终端以手机为例。

存储器601,所述存储器601可以被cpu602、外设接口603等访问,所述存储器601可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

外设接口603,所述外设接口603可以将设备的输入和输出外设连接到cpu602和存储器601。

i/o子系统609,所述i/o子系统609可以将设备上的输入输出外设,例如触摸屏612和其他输入/控制设备610,连接到外设接口603。i/o子系统609可以包括显示控制器6091和用于控制其他输入/控制设备610的一个或多个输入控制器6092。其中,一个或多个输入控制器6092从其他输入/控制设备610接收电信号或者向其他输入/控制设备610发送电信号,其他输入/控制设备610可以包括物理按钮(按压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击滚轮。值得说明的是,输入控制器6092可以与以下任一个连接:键盘、红外端口、usb接口以及诸如鼠标的指示设备。

触摸屏612,所述触摸屏612是用户终端与用户之间的输入接口和输出接口,将可视输出显示给用户,可视输出可以包括图形、文本、图标、视频等。

i/o子系统609中的显示控制器6091从触摸屏612接收电信号或者向触摸屏612发送电信号。触摸屏612检测触摸屏上的接触,显示控制器6091将检测到的接触转换为与显示在触摸屏612上的用户界面对象的交互,即实现人机交互,显示在触摸屏612上的用户界面对象可以是运行游戏的图标、联网到相应网络的图标等。值得说明的是,设备还可以包括光鼠,光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸。

rf电路605,主要用于建立手机与无线网络(即网络侧)的通信,实现手机与无线网络的数据接收和发送。例如收发短信息、电子邮件等。具体地,rf电路605接收并发送rf信号,rf信号也称为电磁信号,rf电路605将电信号转换为电磁信号或将电磁信号转换为电信号,并且通过该电磁信号与通信网络以及其他设备进行通信。rf电路605可以包括用于执行这些功能的已知电路,其包括但不限于天线系统、rf收发机、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、codec(coder-decoder,编译码器)芯片组、用户标识模块(subscriberidentitymodule,sim)等等。

音频电路606,主要用于从外设接口603接收音频数据,将该音频数据转换为电信号,并且将该电信号发送给扬声器611。

扬声器611,用于将手机通过rf电路605从无线网络接收的语音信号,还原为声音并向用户播放该声音。

电源管理芯片608,用于为cpu602、i/o子系统及外设接口所连接的硬件进行供电及电源管理。

上述实施例中提供的应用程序的控制装置、存储介质及终端可执行本申请实施例所提供的对应的应用程序的控制方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的应用程序的控制。

注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。

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