发明内容
为了解决背景技术中当基础服务不再被使用时,基础服务将仍然处于开启状态,从而会缩短终端续航时间的问题,本发明实施例提供了一种服务管理方法、装置和终端。所述技术方案如下:
第一方面,提供了一种服务管理方法,所述服务管理方法包括:
获取终端中各个基础服务的使用状态信息;
根据所述使用状态信息检测是否存在不再被任一应用程序使用的基础服务;
若检测结果为存在不再被任一应用程序使用的基础服务,则关闭检测到的所述基础服务。
优选地,所述获取终端中各个基础服务的使用状态信息,包括:
获取前一时刻所述终端中的各个基础服务的使用状态信息;
获取当前时刻所述终端中的各个基础服务的使用状态信息;
所述根据所述使用状态信息检测是否存在不再被任一应用程序使用的基础服务,包括:
根据所述前一时刻和所述当前时刻所述终端中的各个基础服务的使用状态信息的对比结果,来检测是否存在不再被任一应用程序使用的基础服务。
优选地,所述获取前一时刻所述终端中的各个基础服务的使用状态信息,包括:
读取保存的所述前一时刻所述终端中的各个基础服务的使用状态信息,所述前一时刻所述终端中的各个基础服务的使用状态信息,是根据前一时刻处于运行状态的每个应用程序与所请求使用的基础服务之间的对应关系生成并保存的。
优选地,所述获取当前时刻所述终端中的各个基础服务的使用状态信息,包括:
获取当前时刻处于运行状态的每个应用程序与所请求使用的基础服务之间的对应关系;
根据获取到的所述对应关系生成并保存当前时刻所述终端中的各个基础服务的使用状态信息。
优选地,所述各个基础服务的使用状态信息为:各个基础服务的引用计数,所述引用计数表示正在使用所述基础服务的应用程序的个数。
优选地,所述获取终端中各个基础服务的使用状态信息,包括:
将保存的前一时刻所述终端中的各个基础服务的引用计数更新为当前时刻所述终端中的各个基础服务的引用计数,每个所述引用计数表示正在使用自身所对应的基础服务的应用程序的个数;
所述根据所述使用状态信息检测是否存在不再被任一应用程序使用的基础服务,包括:
根据所述当前时刻所述终端中的各个基础服务的引用计数检测是否存在引用计数为零的基础服务;
若检测结果为存在引用计数为零的基础服务,则认为存在不再被任一应用程序使用的基础服务。
优选地,所述将保存的前一时刻所述终端中的各个基础服务的引用计数更新为当前时刻所述终端中的各个基础服务的引用计数,包括:
获取所述终端中在当前时刻处于运行状态的应用程序和每个处于运行状态的应用程序与所请求使用的基础服务之间的对应关系;
对比保存的前一时刻处于运行状态的应用程序和所述当前时刻处于运行状态的应用程序,检测是否存在新开启的应用程序;
若检测结果为存在新开启的应用程序,则根据所述新开启的应用程序与所请求使用的基础服务之间的对应关系,将对应基础服务的引用计数加1。
优选地,所述将保存的前一时刻所述终端中的各个基础服务的引用计数更新为当前时刻所述终端中的各个基础服务的引用计数,包括:
获取所述终端中在当前时刻处于运行状态的应用程序;
对比保存的前一时刻处于运行状态的应用程序和所述当前时刻处于运行状态的应用程序,检测是否存在被关闭的应用程序;
若检测结果为存在被关闭的应用程序,则根据所述被关闭的应用程序与所请求使用的基础服务之间的对应关系,将对应基础服务的引用计数减1。
第二方面,提供了一种服务管理装置,所述服务管理装置,包括:
信息获取模块,用于获取终端中各个基础服务的使用状态信息;
服务检测模块,用于根据所述信息获取模块获取到的所述使用状态信息检测是否存在不再被任一应用程序使用的基础服务;
服务关闭模块,用于若所述服务检测模块的检测结果为存在不再被任一应用程序使用的基础服务,则关闭检测到的所述基础服务。
优选地,所述信息获取模块,包括:
第一获取单元,用于获取前一时刻所述终端中的各个基础服务的使用状态信息;
第二获取单元,用于获取当前时刻所述终端中的各个基础服务的使用状态信息;
所述服务检测模块,还用于根据所述前一时刻和所述当前时刻所述终端中的各个基础服务的使用状态信息的对比结果,来检测是否存在不再被任一应用程序使用的基础服务。
优选地,所述第一获取单元读取保存的所述前一时刻所述终端中的各个基础服务的使用状态信息,所述前一时刻所述终端中的各个基础服务的使用状态信息,是根据前一时刻处于运行状态的每个应用程序与所请求使用的基础服务之间的对应关系生成并保存的。
优选地,所述第二获取单元,包括:
关系获取子单元,用于获取当前时刻处于运行状态的每个应用程序与所请求使用的基础服务之间的对应关系;
关系生成子单元,用于根据所述关系获取子单元获取到的所述对应关系生成并保存当前时刻所述终端中的各个基础服务的使用状态信息。
优选地,所述各个基础服务的使用状态信息为:各个基础服务的引用计数,所述引用计数表示正在使用所述基础服务的应用程序的个数。
优选地,所述信息获取模块将保存的前一时刻所述终端中的各个基础服务的引用计数更新为当前时刻所述终端中的各个基础服务的引用计数,每个所述引用计数表示正在使用自身所对应的基础服务的应用程序的个数;
所述服务检测模块,包括:
服务检测单元,用于根据所述当前时刻所述终端中的各个基础服务的引用计数检测是否存在引用计数为零的基础服务;
检测结果单元,用于若所述服务检测单元的检测结果为存在引用计数为零的基础服务,则认为存在不再被任一应用程序使用的基础服务。
优选地,所述信息获取模块,包括:
第一获取单元,用于获取所述终端中在当前时刻处于运行状态的应用程序和每个处于运行状态的应用程序与所请求使用的基础服务之间的对应关系;
第一检测单元,用于对比保存的前一时刻处于运行状态的应用程序和所述当前时刻处于运行状态的应用程序,检测是否存在新开启的应用程序;
第一更新单元,用于若所述第一检测单元的检测结果为存在新开启的应用程序,则根据所述新开启的应用程序与所请求使用的基础服务之间的对应关系,将对应基础服务的引用计数加1。
优选地,所述信息获取模块,包括:
第二获取单元,用于获取所述终端中在当前时刻处于运行状态的应用程序;
第二检测单元,用于对比保存的前一时刻处于运行状态的应用程序和所述当前时刻处于运行状态的应用程序,检测是否存在被关闭的应用程序;
第二更新单元,用于若所述第二检测单元的检测结果为存在被关闭的应用程序,则根据所述被关闭的应用程序与所请求使用的基础服务之间的对应关系,将对应基础服务的引用计数减1。
第三方面,提供了一种终端,所述终端包括第二方面提供的服务管理装置。
本发明实施例提供的技术方案的有益效果是:
通过获取终端中各个基础服务的使用状态信息,并根据使用状态信息检测是否存在不再被任一应用程序使用的基础服务,从而当检测结果为存在不再被任一应用程序使用的基础服务,关闭检测到的基础服务;解决了背景技术中当基础服务不再被使用时,基础服务将仍然处于开启状态,从而会缩短终端续航时间的问题;达到了当终端中的某一基础服务不再被使用时,终端可以关闭该基础服务,从而增长终端续航时间的效果。
具体实施方式
为了使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明实施例的一部份,而不是全部的实施例。基于本发明实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明实施例保护的范围。
实施例一
请参考图1,其示出了本发明实施例一提供的服务管理方法的方法流程图,该服务管理方法可以包括:
步骤101,获取终端中各个基础服务的使用状态信息;
步骤102,根据使用状态信息检测是否存在不再被任一应用程序使用的基础服务;
步骤103,若检测结果为存在不再被任一应用程序使用的基础服务,则关闭检测到的基础服务。
综上所述,本实施例提供的服务管理方法,通过获取终端中各个基础服务的使用状态信息,并根据使用状态信息检测是否存在不再被任一应用程序使用的基础服务,从而当检测结果为存在不再被任一应用程序使用的基础服务,关闭检测到的基础服务;解决了背景技术中当基础服务不再被使用时,基础服务将仍然处于开启状态,从而会缩短终端续航时间的问题;达到了当终端中的某一基础服务不再被使用时,终端可以关闭该基础服务,从而增长终端续航时间的效果。
由于在步骤102中,终端可以通过两种方案来检测是否存在不再被任一应用程序使用的基础服务,其中一种方案是终端同时获取前一时刻和当前时刻两个时刻下的各个基础服务的使用状态信息,并通过对比两个时刻的使用状态信息来检测是否存在不再被任一应用程序使用的基础服务;而另一种方案是终端通过更新前一时刻的各个基础服务的使用状态信息来得到当前时刻的各个基础服务的使用状态信息,从而通过当前时刻的各个基础服务的使用状态信息来检测是否存在不再被任一应用程序使用的基础服务,所以下文将在实施例二和实施例三中分别对两种方案进行详细描述。
实施例二
请参考图2,其示出了本发明实施例二提供的服务管理方法的方法流程图,该服务管理方法可以用于终端中,作为实施例一的优选实施例,在本实施例中该服务管理方法可以包括:
步骤201,获取前一时刻终端中的各个基础服务的使用状态信息;
终端可以获取前一时刻终端中的各个基础服务的使用状态信息。其中,各个基础服务的使用状态信息为各个基础服务的引用计数,引用计数表示正在使用基础服务的应用程序的个数;基础服务可以包括蓝牙、GPS、数据流量和WIFI中的至少一种。
在实际实现时,终端可以读取保存的前一时刻终端中的各个基础服务的使用状态信息。由于终端可以在每个时刻获取处于运行状态的应用程序与所请求使用的基础服务之间的对应关系,根据获取到的对应关系生成各个基础服务的使用状态信息,并且为了后续使用,终端还可以保存生成的各个基础服务的使用状态信息,所以在本实施例中,前一时刻终端中的各个基础服务的使用状态信息是根据前一时刻处于运行状态的每个应用程序与所请求使用的基础服务之间的对应关系生成并保存的,所以终端可以通过读取保存的信息的方式来获取前一时刻终端中的各个基础服务的使用状态信息。
比如,请参考表2-1,前一时刻终端获取的处于运行状态的应用程序与所请求使用的基础服务之间的对应关系包括:APP1请求使用的基础服务为蓝牙和数据流量,APP2请求使用的基础服务为蓝牙和GPS,APP3请求使用的基础服务为GPS;
处于开启状态的应用程序 |
请求使用的基础服务 |
APP1 |
蓝牙、数据流量 |
APP2 |
蓝牙和GPS |
APP3 |
GPS |
表2-1
终端根据获取到的对应关系生成的前一时刻终端中的各个基础服务的使用状态信息,包括:基础服务蓝牙的使用状态信息也即正在使用蓝牙的应用程序的个数为2个,数据流量为1个,GPS为2,具体请参考表2-2,并且在终端生成前一时刻终端中的各个基础服务的使用状态信息之后,为了便于后续使用终端可以保存生成的各个基础服务的使用状态信息,也即保存表2-2,所以终端获取到的前一时刻终端中的各个基础服务的使用状态信息即为表2-2中保存的信息。
基础服务 |
基础服务的使用状态信息 |
蓝牙 |
2 |
数据流量 |
1 |
GPS |
2 |
表2-2
需要说明的一点是,每个应用程序被开启的同时,终端可以记录应用程序与该应用程序所请求使用的基础服务之间的对应关系,并在应用程序被关闭时,终端可以删除已经记录的与关闭的应用程序对应的对应关系,所以对于每一个时刻,终端可以从记录的对应关系中获取处于运行状态的应用程序与每个应用程序请求使用的基础服务之间的对应关系,本实施例对此并不做详细描述;
需要补充说明的另一点是,在本实施例中,终端可以采用轮询的方式来获取终端中各个基础服务的使用状态信息,也即在本实施例中,前一时刻和当前时刻是进行轮询查询时所对应的不同时刻。当然在实际实现时,还可以将前一时刻和当前时刻定义为有应用程序关闭或者开启时的不同时刻,本实施例对此并不做限定。
步骤202,获取当前时刻终端中的各个基础服务的使用状态信息;
终端还可以获取当前时刻终端中的各个基础服务的使用状态信息。在实际实现时,终端可以获取当前时刻处于运行状态的每个应用程序与应用程序请求使用的基础服务之间的对应关系,并根据获取到的对应关系生成并保存当前时刻终端中的各个基础服务的使用状态信息。需要说明的是,该步骤与步骤201中前一时刻终端中的各个基础服务的使用状态信息的生成方法类似,详细请参考步骤201,本实施例在此不再赘述。
比如,请参考表2-3,终端获取得到的当前时刻处于运行状态的每个应用程序与所请求使用的基础服务之间的对应关系;
处于开启状态的应用程序 |
请求使用的基础服务 |
APP2 |
蓝牙和GPS |
APP3 |
GPS |
表2-3
终端根据表2-3的对应关系生成的当前时刻终端中的各个基础服务的使用状态信息如下:
基础服务 |
基础服务的使用状态信息 |
蓝牙 |
1 |
GPS |
2 |
表2-4
步骤203,根据前一时刻和当前时刻终端中的各个基础服务的使用状态信息之间的对比结果,来检测是否存在不再被任一应用程序使用的基础服务;
在终端得到前一时刻的各个基础服务的使用状态信息和当前时刻的各个基础服务的使用状态信息之后,终端可以根据前一时刻和当前时刻的各个基础服务的使用状态信息的对比结果,来检测是否存在不再被使用的基础服务。比如,终端可以对比表2-2和表2-4来检测是否存在前一时刻被使用但当前时刻不再被使用的基础服务。
步骤204,若检测结果为存在不再被任一应用程序使用的基础服务,则关闭检测到的基础服务。
如果终端的检测结果为存在不再被使用的基础服务,则为了释放不再被使用的基础服务所占用的资源,终端可以关闭检测到的基础服务。
比如,终端通过表2-2和表2-4可以很容易知道,基础服务‘数据流量’前一时刻时使用状态信息为1,而当前时刻没有,也即前一时刻被使用而当前时刻不再被使用,所以终端可以将基础服务数据流量关闭。
综上所述,本实施例提供的服务管理方法,通过获取终端中各个基础服务的使用状态信息,并根据使用状态信息检测是否存在不再被任一应用程序使用的基础服务,从而当检测结果为存在不再被任一应用程序使用的基础服务,关闭检测到的基础服务;解决了背景技术中当基础服务不再被使用时,基础服务将仍然处于开启状态,从而会缩短终端续航时间的问题;达到了当终端中的某一基础服务不再被使用时,终端可以关闭该基础服务,从而增长终端续航时间的效果。
实施例三
请参考图3,其示出了本发明实施例三提供的服务管理方法的方法流程图,该服务管理方法可以用于终端中,作为实施例一的优选实施例,在本实施例中该服务管理方法可以包括:
步骤301,将保存的前一时刻终端中的各个基础服务的引用计数更新为当前时刻终端中的各个基础服务的引用计数;
终端可以将预先保存的前一时刻终端中的各个基础服务的引用计数更新为当前时刻终端中的各个基础服务的引用计数。其中,每个引用计数表示正在使用自身所对应的基础服务的应用程序的个数。
在实际实现时,其详细的执行步骤可以包括:
第一,获取终端中在当前时刻处于运行状态的应用程序和每个处于运行状态的应用程序与所请求使用的基础服务之间的对应关系;
终端可以获取当前时刻处于运行状态的应用程序和每个处于运行状态的应用程序与所请求使用的基础服务之间的对应关系。在实际实现时,终端可以直接检测得到当前时刻处于运行状态的应用程序,比如,检测得到的处于运行状态的应用程序有APP1、APP2、APP3和APP4;而对于当前时刻处于运行状态的应用程序与所请求使用的基础服务之间的对应关系,由于在每一时刻,终端都记录了处于运行状态的每个应用程序与所请求使用的基础服务之间的对应关系,所以终端可以从记录的对应关系中直接读取;或者,由于终端中保存了前一时刻处于运行状态的应用程序和每个处于运行状态的应用程序与请求使用的基础服务之间的对应关系,所以终端还可以先对比当前时刻是否有新开启的应用程序,若没有新开启的应用程序,则直接从前一时刻保存的对应关系中获取当前时刻处于运行状态的应用程序与请求使用的基础服务之间的对应关系,若有新开启的应用程序,则从记录的当前时刻的对应关系中获取新开启的应用程序与请求使用的对应关系,从而通过两次获取操作得到当前时刻处于运行状态的应用程序与每个应用程序请求使用的基础服务之间的对应关系,本实施例对其具体的获取方法并不做限定。
比如,终端获取到的当前时刻处于运行状态的应用程序与每个应用程序请求使用的基础服务之间的对应关系是如表3-1所述的对应关系:
处于开启状态的应用程序 |
请求使用的基础服务 |
APP1 |
蓝牙、数据流量 |
APP2 |
蓝牙和GPS |
APP3 |
GPS |
APP4 |
数据流量 |
表3-1
第二,对比保存的前一时刻处于运行状态的应用程序和当前时刻处于运行状态的应用程序,检测是否存在新开启的应用程序;
由于终端中保存了前一时刻处于运行状态的应用程序并且已经获取到当前时刻处于运行状态的应用程序,所以终端可以对比两个时刻处于运行状态的应用程序,从而检测是否存在新开启的应用程序。
第三,若检测结果为存在新开启的应用程序,则根据新开启的应用程序与所请求使用的基础服务之间的对应关系,将对应基础服务的引用计数加1。
由于终端中保存了前一时刻所对应的各个基础服务的引用计数,所以当终端的检测结果为存在新开启的应用程序时,终端可以根据新开启的应用程序与所请求使用的基础服务之间的对应关系,将对应的基础服务的引用计数加1。
比如,终端预先保存的前一时刻所对应的各个基础服务的引用计数如表3-2,
基础服务 |
基础服务的使用状态信息 |
蓝牙 |
2 |
数据流量 |
1 |
GPS |
2 |
表3-2
终端保存的前一时刻处于运行状态的应用程序为APP1、APP2和APP3,而获取到当前时刻处于运行状态的应用程序为APP1、APP2、APP3和APP4,所以终端可以检测到当前时刻存在新开启的应用程序APP4,而根据表3-1可以知道终端获取到的APP3与请求使用的基础服务之间的对应关系为:APP3请求使用数据流量,则此时终端可以将保存的如表3-2所示的前一时刻所对应的各个基础服务的引用计数中数据流量对应的引用计数加1,从而得到表3-3所示的各个基础服务的引用计数。
基础服务 |
基础服务的使用状态信息 |
蓝牙 |
2 |
数据流量 |
2 |
GPS |
2 |
表3-3
当然,在实际实现时,可能会存在两个或者两个以上新开启的应用程序,此时终端只需要根据每个新开启的应用程序与该应用程序请求使用的基础服务之间的对应关系分别更新各个基础服务对应的引用计数即可,本实施例对此不再赘述。
同时,由于相对于前一时刻,当前时刻可能会有应用程序关闭,所以在实际实现时,将保存的前一时刻终端中的各个基础服务的引用计数更新为当前时刻终端中的各个基础服务的引用计数的步骤还可以包括:
第一,获取终端中在当前时刻处于运行状态的应用程序;
比如,终端获取到的当前时刻处于运行状态的应用程序为APP2和APP3。
第二,对比保存的前一时刻处于运行状态的应用程序和当前时刻处于运行状态的应用程序,检测是否存在被关闭的应用程序;
终端根据获取得到的当前时刻处于运行状态的应用程序以及预先保存的前一时刻处于运行状态的应用程序检测是否存在被关闭的应用程序。
第三,若检测结果为存在被关闭的应用程序,则根据被关闭的应用程序与所请求使用的基础服务之间的对应关系,将对应基础服务的引用计数减1。
如果终端的检测结果为存在被关闭的应用程序,则此时终端可以根据被关闭的应用程序与所请求使用的基础服务之间的对应关系,将对应的基础服务的引用计数减1。其中,由于终端可以预先保存前一时刻处于运行状态的应用程序与所请求使用的基础服务之间的对应关系,所以终端可以从预先保存的对应关系中读取已经关闭的应用程序与所请求使用的基础服务之间的对应关系,本实施例在此不再赘述。
比如,终端保存的前一时刻处于运行状态的应用程序和所请求使用的基础服务之间的对应关系如表3-4,
处于开启状态的应用程序 |
请求使用的基础服务 |
APP1 |
蓝牙、数据流量 |
APP2 |
蓝牙和GPS |
APP3 |
GPS |
表3-4
终端保存的前一时刻处于运行状态的应用程序为APP1、APP2和APP3,而获取到的当前时刻处于运行状态的应用程序为APP2和APP3,则对比于前一时刻,当前时刻APP1被关闭,从终端保存的如表3-4所示的前一时刻处于运行状态的应用程序与请求使用的基础服务之间的对应关系中,可以得到APP1请求使用蓝牙和数据流量,此时终端可以将保存的前一时刻终端中的各个基础服务的引用计数中,蓝牙和数据流量两个基础服务所对应的引用计数分别减1,从而得到表3-5所示的各个基础服务的引用计数。
基础服务 |
基础服务的使用状态信息 |
蓝牙 |
1 |
数据流量 |
0 |
GPS |
2 |
表3-5
当然,在实际实现时,可能会存在两个或者两个以上被关闭的应用程序,此时终端只需要根据每个被关闭的应用程序与该应用程序请求使用的基础服务之间的对应关系分别更新各个基础服务对应的引用计数即可,本实施例对此不再赘述。
需要补充说明的是,在实际实现时根据不同的使用环境,终端可以只检测是否有新开启的应用程序或者只检测是否有被关闭的应用程序,从而根据检测结果更新对应的基础服务的引用计数,也可以同时检测是否有新开启的应用程序和是否有被关闭的应用程序,并根据两种检测结果来更新对应的基础服务的引用计数,本实施例对此并不做限定。
步骤302,根据当前时刻终端中的各个基础服务的引用计数检测是否存在引用计数为零的基础服务;
在终端将前一时刻终端中的各个基础服务的引用计数更新为当前时刻终端中的各个基础服务的引用计数之后,终端可以检测是否存在引用计数为零的基础服务。
比如,以终端检测到存在关闭的应用程序,也即得到的当前时刻的各个基础服务的引用计数是表3-5所示的引用计数为例,终端可以检测表3-5中是否存在引用计数为零的基础服务。
步骤303,若检测结果为存在引用计数为零的基础服务,则认为存在不再被使用的基础服务;
如果终端的检测结果为存在引用计数为零的基础服务,则此时终端可以认为存在前一时刻被使用但当前时刻不再被使用的基础服务。比如,从表3-5可以很容易的得到数据流量的引用计数被更新为零,所以终端可以认为数据流量是不再被使用的基础服务。
步骤304,若检测结果为存在不再被使用的基础服务,则关闭检测到的基础服务。
当终端的检测结果为存在不再被使用的基础服务之后,则为了释放不再被使用的基础服务所占用的资源,终端可以关闭检测到的基础服务。
综上所述,本实施例提供的服务管理方法,通过获取终端中各个基础服务的使用状态信息,并根据使用状态信息检测是否存在不再被任一应用程序使用的基础服务,从而当检测结果为存在不再被任一应用程序使用的基础服务,关闭检测到的基础服务;解决了背景技术中当基础服务不再被使用时,基础服务将仍然处于开启状态,从而会缩短终端续航时间的问题;达到了当终端中的某一基础服务不再被使用时,终端可以关闭该基础服务,从而增长终端续航时间的效果。
实施例四
请参考图4,其示出了本发明实施例四提供的服务管理装置的结构方框图,该服务管理装置可以通过软件、硬件或者两者的结合实现成为终端的全部或者部分,该服务管理装置可以包括:信息获取模块410、服务检测模块420和服务关闭模块430;
信息获取模块410,用于获取终端中各个基础服务的使用状态信息;
服务检测模块420,用于根据所述信息获取模块410获取到的所述使用状态信息检测是否存在不再被任一应用程序使用的基础服务;
服务关闭模块430,用于若所述服务检测模块420的检测结果为存在不再被任一应用程序使用的基础服务,则关闭检测到的所述基础服务。
综上所述,本实施例提供的服务管理装置,通过获取终端中各个基础服务的使用状态信息,并根据使用状态信息检测是否存在不再被任一应用程序使用的基础服务,从而当检测结果为存在不再被任一应用程序使用的基础服务,关闭检测到的基础服务;解决了背景技术中当基础服务不再被使用时,基础服务将仍然处于开启状态,从而会缩短终端续航时间的问题;达到了当终端中的某一基础服务不再被使用时,终端可以关闭该基础服务,从而增长终端续航时间的效果。
实施例五
请参考图5,其示出了本发明实施例五提供的服务管理装置的结构方框图,该服务管理装置可以通过软件、硬件或者两者的结合实现成为终端的全部或者部分,该服务管理装置可以包括:信息获取模块410、服务检测模块420和服务关闭模块430;
信息获取模块410,用于获取终端中各个基础服务的使用状态信息;
服务检测模块420,用于根据所述信息获取模块410获取到的所述使用状态信息检测是否存在不再被任一应用程序使用的基础服务;
服务关闭模块430,用于若所述服务检测模块420的检测结果为存在不再被任一应用程序使用的基础服务,则关闭检测到的所述基础服务。
优选地,所述信息获取模块410,包括:
第一获取单元411,用于获取前一时刻所述终端中的各个基础服务的使用状态信息;
第二获取单元412,用于获取当前时刻所述终端中的各个基础服务的使用状态信息;
相应的,所述服务检测模块420,还用于根据所述前一时刻和所述当前时刻所述终端中的各个基础服务的使用状态信息的对比结果,来检测是否存在不再被任一应用程序使用的基础服务。
优选地,所述第一获取单元411,还用于读取保存的所述前一时刻所述终端中的各个基础服务的使用状态信息,所述前一时刻所述终端中的各个基础服务的使用状态信息,是根据前一时刻处于运行状态的每个应用程序与所请求使用的基础服务之间的对应关系生成并保存的。
优选地,请参考图6,所述第二获取单元412,包括:关系获取子单元510和关系生成子单元520;
关系获取子单元510,用于获取当前时刻处于运行状态的每个应用程序与所请求使用的基础服务之间的对应关系;
关系生成子单元520,用于根据所述关系获取子单元获取到的所述对应关系生成并保存当前时刻所述终端中的各个基础服务的使用状态信息。
优选地,所述各个基础服务的使用状态信息为:各个基础服务的引用计数,所述引用计数表示正在使用所述基础服务的应用程序的个数。
综上所述,本实施例提供的服务管理装置,通过获取终端中各个基础服务的使用状态信息,并根据使用状态信息检测是否存在不再被任一应用程序使用的基础服务,从而当检测结果为存在不再被任一应用程序使用的基础服务,关闭检测到的基础服务;解决了背景技术中当基础服务不再被使用时,基础服务将仍然处于开启状态,从而会缩短终端续航时间的问题;达到了当终端中的某一基础服务不再被使用时,终端可以关闭该基础服务,从而增长终端续航时间的效果。
实施例六
请参考图7,其示出了本发明实施例六提供的服务管理装置的结构方框图,该服务管理装置可以通过软件、硬件或者两者的结合实现成为终端的全部或者部分,该服务管理装置可以包括:信息获取模块410、服务检测模块420和服务关闭模块430;
信息获取模块410,用于获取终端中各个基础服务的使用状态信息;
服务检测模块420,用于根据所述信息获取模块410获取到的所述使用状态信息检测是否存在不再被任一应用程序使用的基础服务;
服务关闭模块430,用于若所述服务检测模块420的检测结果为存在不再被任一应用程序使用的基础服务,则关闭检测到的所述基础服务。
优选地,所述信息获取模块410,还用于将保存的前一时刻所述终端中的各个基础服务的引用计数更新为当前时刻所述终端中的各个基础服务的引用计数,每个所述引用计数表示正在使用自身所对应的基础服务的应用程序的个数;
相应的,所述服务检测模块420,包括:
服务检测单元421,用于根据所述当前时刻所述终端中的各个基础服务的引用计数检测是否存在引用计数为零的基础服务;
检测结果单元422,用于若所述服务检测单元421的检测结果为存在引用计数为零的基础服务,则认为存在不再被任一应用程序使用的基础服务。
优选地,请参考图8,所述信息获取模块410,包括:第一获取单元413、第一检测单元414和第一更新单元415;
第一获取单元413,用于获取所述终端中在当前时刻处于运行状态的应用程序和每个处于运行状态的应用程序与所请求使用的基础服务之间的对应关系;
第一检测单元414,用于对比保存的前一时刻处于运行状态的应用程序和所述当前时刻处于运行状态的应用程序,检测是否存在新开启的应用程序;
第一更新单元415,用于若所述第一检测单元414的检测结果为存在新开启的应用程序,则根据所述新开启的应用程序与所请求使用的基础服务之间的对应关系,将对应基础服务的引用计数加1。
优选地,请参考图9,所述信息获取模块410,包括:第二获取单元416、第二检测单元417和第二更新单元418;
第二获取单元416,用于获取所述终端中在当前时刻处于运行状态的应用程序;
第二检测单元417,用于对比保存的前一时刻处于运行状态的应用程序和所述当前时刻处于运行状态的应用程序,检测是否存在被关闭的应用程序;
第二更新单元418,用于若所述第二检测单元417的检测结果为存在被关闭的应用程序,则根据所述被关闭的应用程序与所请求使用的基础服务之间的对应关系,将对应基础服务的引用计数减1。
综上所述,本实施例提供的服务管理装置,通过获取终端中各个基础服务的使用状态信息,并根据使用状态信息检测是否存在不再被任一应用程序使用的基础服务,从而当检测结果为存在不再被任一应用程序使用的基础服务,关闭检测到的基础服务;解决了背景技术中当基础服务不再被使用时,基础服务将仍然处于开启状态,从而会缩短终端续航时间的问题;达到了当终端中的某一基础服务不再被使用时,终端可以关闭该基础服务,从而增长终端续航时间的效果。
需要说明的是:上述实施例提供服务管理装置和终端在对服务进行管理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的服务管理装置与服务管理方法的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以保存于一种计算机可读保存介质中,上述提到的保存介质可以是只读保存器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。