CN106959874A - 基于操作系统的应用管理方法及应用该方法的电子设备 - Google Patents
基于操作系统的应用管理方法及应用该方法的电子设备 Download PDFInfo
- Publication number
- CN106959874A CN106959874A CN201710169659.3A CN201710169659A CN106959874A CN 106959874 A CN106959874 A CN 106959874A CN 201710169659 A CN201710169659 A CN 201710169659A CN 106959874 A CN106959874 A CN 106959874A
- Authority
- CN
- China
- Prior art keywords
- application
- application program
- management module
- state
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000007726 management method Methods 0.000 title claims abstract description 137
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000008569 process Effects 0.000 description 17
- 230000008014 freezing Effects 0.000 description 7
- 238000007710 freezing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000010257 thawing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
一种基于操作系统的应用管理方法,应用于电子设备,所述方法包括:加载应用管理模块,以向所述操作系统注册package manager service、alarm manager service、network policy manager service以及power manager service四个系统服务;所述应用管理模块管理每个应用程序与所述四个系统服务中所对应的系统服务;所述应用管理模块监听应用程序的状态;所述应用程序的状态从第一状态变更到第二状态时,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务。
Description
技术领域
本发明涉及基于操作系统的应用管理方法以及应用该方法的电子设备。
背景技术
随着互联网技术的发展,用户在移动智能设备上安装的各种应用来获得多种服务。对于这些应用的开发者来说,这些应用的进程在用户移动智能设备上一直常驻内存,才能更好的、更快的响应用户所需要的服务或者操作,“应用进程保活”技术因此成为每个应用进程采用的常规技术手段。然而,这些应用的进程驻留在后台,就会占用移动设备内存,CPU,耗费系统电量和网络流量。大量的应用进程在后台运行,就会对极大降低系统性能,极大影响用户操作体验。智能设备产商以及第三方的安全软件开发者,提供了对移动设备上的应用进程进行控制和管理的技术手段,从而限制应用进程对系统性能,系统功耗的影响。对应用程序进程的控制和管理可以简单地描述为对应用程序的进程进行“冻结”和“解冻”。
目前,传统的对应用程序进程的控制和管理主要分为两类:
第一类技术方案,利用安卓(Android,下文中称为Android)系统提供的应用包系统管理工具,对用户不需要的应用进程进行禁用(disable)操作,和桌面图标隐藏。但是,这种技术方案的劣势在于执行效率过低,当用户需要再次使用被禁用的应用包时,需要做一次应用包启用(package enable)的操作。而这种操作并不比重新安装应用包的时间少很多。
第二类技术方案,是将冻结的操作放到Linux系统,而不是在Android的虚拟机。当需要对某个Android应用进程进行冻结,则将找到与Android应用相对应的Linux进程,对该进程进行“挂起”(暂停)的操作,如果需要“解冻”,则“唤醒”该进程。这种技术方案的优势就是执行速度快,用户体验佳。但该方案的劣势是开发难度和风险都比较大,代码涉及Linux系统和Android系统,同时,Linux进程与Android进程信息不同步,将导致系统崩溃。
发明内容
为了解决现有技术中的上述技术问题,根据本发明的一方面,提供一种基于操作系统的应用管理方法,应用于电子设备,所述方法包括:加载应用管理模块,以向所述操作系统注册package manager service、alarm manager service、network policy managerservice以及power manager service四个系统服务;所述应用管理模块管理每个应用程序与所述四个系统服务中所对应的系统服务;所述应用管理模块监听应用程序的状态;所述应用程序的状态从第一状态变更到第二状态时,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务。
此外,根据本发明的一个实施例,其中,所述应用程序的状态从第二状态变更到第一状态时,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,解除所述四个系统服务中与所述应用程序对应的系统服务的冻结。
此外,根据本发明的一个实施例,其中,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务,进一步包括:按照预定策略确定所述应用程序是否需要冻结。
此外,根据本发明的一个实施例,其中,所述按照预定策略确定所述应用程序是否需要冻结,进一步包括:判断处于所述第二状态的所述应用程序是否仍然处于运行状态;基于处于所述第二状态的所述应用程序仍然处于运行状态的第一判断结果,判断所述应用程序是否属于不受限应用列表;基于所述应用程序不属于不受限应用列表的第二判断结果,确定所述应用程序为需要冻结的应用程序。
此外,根据本发明的一个实施例,所述基于操作系统的应用管理方法还包括:将所述应用加入受限应用列表中;所述应用管理模块的package setting代理模块,基于所述受限应用列表改变系统package setting的状态信息;所述应用管理模块的alarm代理模块,基于所述受限应用列表屏蔽应用程序的alarm;所述应用管理模块的network policy代理模块,基于所述受限应用列表限制应用程序使用网络;所述应用管理模块的wake lock代理模块,基于所述受限应用列表屏蔽应用程序使用唤醒锁。
此外,根据本发明的另一方面,提供一种电子设备,该电子设备应用基于操作系统的应用管理方法,所述电子设备包括:应用管理模块,配置为向所述操作系统注册packagemanager service、alarm manager service、network policy manager service以及powermanager service四个系统服务;所述应用管理模块管理每个应用程序与所述四个系统服务中所对应的系统服务;所述应用管理模块监听应用程序的状态;所述应用程序的状态从第一状态变更到第二状态时,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务。
此外,根据本发明的一个实施例,其中,所述应用管理模块还配置为所述应用程序的状态从第二状态变更到第一状态时,基于与所述应用程序所注册的所述操作系统的系统服务,解除所述四个系统服务中与所述应用程序对应的系统服务的冻结。
此外,根据本发明的一个实施例,其中,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务,进一步包括:所述应用管理模块按照预定策略确定所述应用程序是否需要冻结。
此外,根据本发明的一个实施例,其中,所述应用管理模块按照预定策略确定所述应用程序是否需要冻结,进一步包括:判断处于所述第二状态的所述应用程序是否仍然处于运行状态;基于处于所述第二状态的所述应用程序仍然处于运行状态的第一判断结果,判断所述应用程序是否属于不受限应用列表;基于所述应用程序不属于不受限应用列表的第二判断结果,确定所述应用程序为需要冻结的应用程序。
此外,根据本发明的一个实施例,其中,所述应用管理模块还配置为将所述应用加入受限应用列表中;其中,所述应用管理模块的package setting代理模块,基于所述受限应用列表改变系统package setting的状态信息;所述应用管理模块的alarm代理模块,基于所述受限应用列表屏蔽应用程序的alarm;所述应用管理模块的network policy代理模块,基于所述受限应用列表限制应用程序使用网络;所述应用管理模块的wake lock代理模块,基于所述受限应用列表屏蔽应用程序使用唤醒锁。
通过上述方式,可以基于操作系统对其中的应用程序自动进行管理,避免用户对应用进行手动设置,并无需与底层系统进行交互操作,显著提高了用户的使用体验,并降低了开发者在开发时的难度和风险。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用于提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对发明的限制,在附图中:
图1是示出根据本发明实施例的电子设备应用基于操作系统的应用管理方法的原理结构示意图;
图2是示出根据本发明实施例的电子设备的示意方框图,所述电子设备应用基于操作系统的应用管理方法;以及
图3是示出根据本发明实施例的基于操作系统的应用管理方法的流程图。
具体实施方式
为了使得本发明实施例的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本发明的各个实施例。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是本发明的全部实施例。基于本发明中描述的实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本发明的保护范围之内。
在下文中,将参考附图详细描述本发明的优选实施例。注意,在本说明书和附图中,具有基本上相同步骤和元素用相同的附图标记来表示,且对这些步骤和元素的重复解释将被省略。
图1是示出根据本发明实施例的电子设备应用基于操作系统的应用管理方法的原理结构示意图。在下文中,将以安卓操作系统作为操作系统的示例,并参照图1来描述本发明实施例的基于操作系统的应用管理方法的原理。所述电子设备优选地为,例如,智能手机、个人数字助理、掌上电脑等。
如图1所示,根据本发明实施例的电子设备1具有应用管理模块10,其包含多个系统服务代理模块,所述应用管理模块10可以是诸如CPU(中央处理单元)、微处理器、DSP(数字信号处理)之类的硬件实现,其功能可以由CPU通过执行软件实现这个模块的功能。容易理解的是,图1中为了简化描述仅仅示出与本发明紧密相关的组件,根据本发明实施例的电子设备1当然还可以包括其它组件或模块,诸如通信模块、电源管理模块等。
根据本发明的实施例,在安卓操作系统中启用并在前台运行一应用程序,该应用程序可以通过系统服务代理模块向所述操作系统注册相关的系统服务。具体地,如图1所示,所述应用程序可以通过图1所示的应用包设置(为便于理解,下文将“应用包设置”称为“package setting”)代理模块101注册应用包管理系统服务(为便于理解,下文将“应用包管理系统服务”称为“package manager service”)来改变系统package setting的状态信息为启用(为便于理解,下文将“启用”称为“enable”),以使应用包的状态为启用;所述应用程序通过闹钟(为便于理解,下文将“闹钟”称为“alarm”)代理模块102注册闹钟管理系统服务(为便于理解,下文将“闹钟管理系统服务”称为“alarm manager service”)将应用程序加入alarm通知列表中,以使所述应用能够通过alarm定时器而被唤醒;所述应用程序通过网络策略(为便于理解,下文将“网络策略”称为“network policy”)代理模块103注册网络策略系统服务(为便于理解,下文将“网络策略系统服务”称为“network policy managerservice”),以使所述应用获得访问网络的权限;所述应用程序通过唤醒锁(为便于理解,下文将“唤醒锁”称为“wake lock”)代理模块104注册电源管理系统服务(为便于理解,下文将“电源管理系统服务”称为“power manager service”)将应用程序加入wake lock通知列表中,以使所述应用能够通过wake lock唤醒锁而被唤醒。其中,所述package setting代理模块101、alarm代理模块102、network policy代理模块103以及wake lock代理模块104包含于应用管理模块10中。
如图1所示,根据本发明的实施例,在操作系统层加载应用管理模块10,从而所述应用管理模块10可以监听应用层中应用程序(App)的状态。并且,通过其中上述的各系统服务代理模块分别向所述操作系统注册所述package manager service、alarm managerservice、network policy manager service以及power manager service四个系统服务,从而所述应用管理模块10可以管理每个应用程序与所述四个系统服务中所对应的系统服务。其中,所述应用管理模块10在操作系统层执行的上述处理。基于所注册的操作系统的系统服务,电子设备1物理层中的硬件可以调用相应的操作系统层中相应的接口,从而实现相关功能。
图2是示出根据本发明实施例的电子设备的示意方框图,所述电子设备应用基于操作系统的应用管理方法。在下文中,将以安卓操作系统作为操作系统的示例,并参照图2来描述本发明实施例的电子设备。
具体地,应用程序在操作系统中运行时,会向所述操作系统注册相关的系统服务,图2所示的电子设备1的应用管理模块10可以基于与所述应用程序所注册的操作系统的系统服务,冻结所述系统服务中与所述应用程序对应的系统服务或解除所述冻结,从而所述应用管理模块10可以管理每个应用程序与所述四个系统服务中所对应的系统服务。此外,应用管理模块10还可以监听应用程序的状态,例如,用户在电子设备上在前台运行一应用程序时,所述应用管理模块10监听到该应用程序的状态为第一状态,而用户将该应用程序切换到后台时,所述应用管理模块10监听到该应用程序的状态为第二状态;或者,所述应用管理模块10监听特定应用程序处于前台或后台时的时间、运行所占用的系统资源、运行所产生的流量以及运行时的耗电量等。
根据本发明的一个实施例,在安卓系统中加载所述应用管理模块10,以通过其中的各系统服务代理模块:package setting代理模块101、alarm代理模块102、networkpolicy代理模块103以及wake lock代理模块104分别向所述操作系统注册所述packagemanager service、alarm manager service、network policy manager service以及powermanager service四个系统服务。并且,所述应用管理模块10监听电子设备1中所述应用程序的状态。
其中,当所述应用管理模块10监听到应用程序从第一状态变更到第二状态时,则所述应用管理模块10基于与所述应用程序所注册的操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务,从而管理每个应用程序与所述四个系统服务中所对应的系统服务。
具体地,应用管理模块10将要冻结的应用加入受限应用列表中。然后,所述应用管理模块10中的package setting代理模块101将所述受限应用列表中的应用程序的系统package setting的状态信息改变为禁用(为便于理解,下文将“禁用”称为“disable”);以及,当所述应用程序意图通过alarm定时器而被唤醒时,所述应用管理模块10中的alarm代理模块102屏蔽该应用程序的alarm,例如,将所述应用程序从alarm通知列表中移出,使其无法通过alarm定时器唤醒;以及,当所述应用程序意图访问网络时,所述应用管理模块10中的network policy代理模块103更新该应用的网络访问策略,禁止所述应用程序访问网络;以及,当所述应用程序意图通过wake lock唤醒锁而被唤醒时,所述应用管理模块10中的wake lock代理模块104屏蔽该应用程序的wake lock,例如,将所述应用程序从wakelock通知列表中移出,使其无法通过wake lock唤醒锁唤醒。通过以上描述的至少一种方式,所述应用管理模块10可以冻结应用程序对应的系统服务。
根据本发明的另一实施例,所述应用管理模块10基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务,进一步包括按照预定策略确定所述应用程序是否需要冻结。
具体地,根据本发明的一个实施例,所述预定策略可以是应用管理模块10判断处于后台的所述应用程序是否仍然处于运行状态,如果所述应用程序仍处于运行状态,则确定所述应用程序为需要冻结的应用程序。如果所述应用程序不处于运行状态,则确定所述应用程序不需要冻结;或者,所述预定策略可以是判断所述应用程序是否属于不受限应用列表中的应用,如果所述应用程序不属于不受限应用列表中的应用,则确定所述应用程序为需要冻结的应用程序。如果所述应用程序属于不受限应用列表中的应用,则确定所述应用程序不需要冻结。其中,所述不受限应用列表为预先设置的;或者,所述预定策略可以是以上两种预定策略的结合,例如,用户将一应用程序从前台切换至后台时,如果应用管理模块10判断该应用程序并未在后台运行,则该应用程序不需要冻结。如果应用管理模块10判断该应用程序仍然在后台运行,则进一步判断该应用程序是否属于不受限应用列表中的应用,如果所述应用程序不属于不受限应用列表中的应用,则确定所述应用程序为需要冻结的应用程序。如果所述应用程序属于不受限应用列表中的应用,则确定所述应用程序不需要冻结。
根据本发明的另一实施例,具体地,所述预定策略可以是应用管理模块10将所述应用程序的特定参数与阈值进行比较,如果所述应用程序的特定参数超过阈值时,则确定所述应用程序为需要冻结的应用程序。如果所述应用程序的特定参数低于阈值时,则确定所述应用程序不需要冻结。例如,所述应用程序的特定参数可以是但不限于是该应用程序的运行时间、该应用程序运行时所占用的系统资源、该应用程序运行时的耗电量,或者该应用程序运行时所产生的流量等。注意,此处所述的运行不仅指应用程序在前台运行,还可以指应用程序在后台运行。
另一方面,当所述应用管理模块10监听到应用程序从第二状态变更到第一状态时,则所述应用管理模块10基于与所述应用程序所注册的所述操作系统的系统服务,解除所述四个系统服务中与所述应用程序对应的系统服务的冻结。具体地,应用管理模块10将要解除冻结的应用移出受限应用列表中。然后,所述应用管理模块10中的package setting代理模块101,改变所述受限应用列表中的应用程序的系统package setting的状态信息为enable;如果在步骤S201中屏蔽了所述应用程序的alarm,则alarm代理模块102撤销对所述应用程序的alarm的屏蔽,例如,将所述应用程序加入alarm通知列表中;如果在步骤S201中所述应用程序被禁止访问网络,则network policy代理模块103更新该应用的网络访问策略,允许所述应用程序访问网络;如果在步骤S201中屏蔽了所述应用程序的wake lock,则wake lock代理模块104撤销对所述应用程序的wake lock的屏蔽,例如,将所述应用程序加入wake lock通知列表中。通过以上描述的至少一种方式,所述应用管理模块10解除对于应用程序对应的系统服务的冻结。
根据本发明的另一实施例,所述应用管理模块10基于与所述应用程序所注册的所述操作系统的系统服务,解除所述四个系统服务中与所述应用程序对应的系统服务的冻结,进一步包括按照预定策略确定所述应用程序是否需要解除冻结。
根据本发明的一个实施例,具体地,所述预定策略可以是应用管理模块10判断处于第一状态的应用程序对应的系统服务是否被冻结,如果处于第一状态的应用程序对应的系统服务被冻结,则确定所述应用程序为需要解除冻结的应用程序,以解除相应的被冻结的系统服务。如果处于第一状态的应用程序对应的系统服务未被冻结,则确定所述应用程序不需要解除冻结。
根据本发明的另一实施例,具体地,所述预定策略可以是应用管理模块10判断处于第一状态的应用程序对应的系统服务是否属于黑名单中的应用。如果处于第一状态的应用程序不属于黑名单中的应用,则确定所述应用程序为需要解除冻结的应用程序,以解除相应的被冻结的系统服务。如果处于第一状态的应用程序属于黑名单中的应用,则确定所述应用程序不需要解除冻结。
图3是图示根据本发明实施例的基于操作系统的应用管理方法的流程图。在以下实施例中,以安卓操作系统作为操作系统的示例来描述本发明的基于操作系统的应用管理方法。根据该实施例,用户在安卓操作系统中启用并在前台运行一应用程序,该应用程序向所述操作系统注册相关的系统服务。具体地,例如,所述应用程序通过package setting代理模块101注册package manager service来改变系统package setting的状态信息为enable,以使应用包的状态为启用;所述应用程序通过alarm代理模块102注册alarmmanager service将应用程序加入alarm通知列表中,以使所述应用能够通过alarm定时器而被唤醒;所述应用程序通过network policy代理模块103注册network policy managerservice,以使所述应用获得访问网络的权限;所述应用程序通过wake lock代理模块104注册power manager service将应用程序加入wake lock通知列表中,以使所述应用能够通过wake lock唤醒锁而被唤醒。其中,所述package setting代理模块101、alarm代理模块102、network policy代理模块103以及wake lock代理模块104包含于应用管理模块10中。
具体如图3所示,根据本发明实施例的基于操作系统的应用管理方法,包括以下步骤:
根据本发明的一个实施例,在步骤S200中,在安卓系统中加载所述应用管理模块10,以通过其中的各系统服务代理模块:package setting代理模块101、alarm代理模块102、network policy代理模块103以及wake lock代理模块104分别向所述操作系统注册所述package manager service、alarm manager service、network policy managerservice以及power manager service四个系统服务。并且,在步骤S200中,应用管理模块10还监听电子设备1中所述应用程序的状态。
其中,在步骤S200中,应用管理模块10监听电子设备1中应用程序的状态。当所述应用管理模块10监听到应用程序从第一状态变更到第二状态时,则进至步骤S201。
在步骤S201中,应用管理模块10基于与所述应用程序所注册的操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务,从而管理每个应用程序与所述四个系统服务中所对应的系统服务。具体地,应用管理模块10将要冻结的应用加入受限应用列表中。然后,所述应用管理模块10中的package setting代理模块101将所述受限应用列表中的应用程序的系统package setting的状态信息改变为disable;以及,当所述应用程序意图通过alarm定时器而被唤醒时,所述应用管理模块10中的alarm代理模块102屏蔽该应用程序的alarm,例如,将所述应用程序从alarm通知列表中移出,使其无法通过alarm定时器唤醒;以及,当所述应用程序意图访问网络时,所述应用管理模块10中的network policy代理模块103更新该应用的网络访问策略,禁止所述应用程序访问网络;以及,当所述应用程序意图通过wake lock唤醒锁而被唤醒时,所述应用管理模块10中的wakelock代理模块104屏蔽该应用程序的wake lock,例如,将所述应用程序从wake lock通知列表中移出,使其无法通过wake lock唤醒锁唤醒。通过以上描述的至少一种方式,所述应用管理模块10可以冻结应用程序对应的系统服务。
根据本发明的另一实施例,在步骤S201中所述应用管理模块10基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务,进一步包括按照预定策略确定所述应用程序是否需要冻结。
根据本发明的一个实施例,具体地,所述预定策略可以是判断处于后台的所述应用程序是否仍然处于运行状态,如果所述应用程序仍处于运行状态,则确定所述应用程序为需要冻结的应用程序。如果所述应用程序不处于运行状态,则确定所述应用程序不需要冻结;或者,所述预定策略可以是判断所述应用程序是否属于不受限应用列表中的应用,如果所述应用程序不属于不受限应用列表中的应用,则确定所述应用程序为需要冻结的应用程序。如果所述应用程序属于不受限应用列表中的应用,则确定所述应用程序不需要冻结。其中,所述不受限应用列表为预先设置的;或者,所述预定策略可以是以上两种预定策略的结合,例如,用户将一应用程序从前台切换至后台时,如果判断该应用程序并未在后台运行,则该应用程序不需要冻结。如果判断该应用程序仍然在后台运行,则进一步判断该应用程序是否属于不受限应用列表中的应用,如果所述应用程序不属于不受限应用列表中的应用,则确定所述应用程序为需要冻结的应用程序。如果所述应用程序属于不受限应用列表中的应用,则确定所述应用程序不需要冻结。
根据本发明的另一实施例,具体地,所述预定策略可以是将所述应用程序的特定参数与阈值进行比较,如果所述应用程序的特定参数超过阈值时,则确定所述应用程序为需要冻结的应用程序。如果所述应用程序的特定参数低于阈值时,则确定所述应用程序不需要冻结。例如,所述应用程序的特定参数可以是但不限于是该应用程序的运行时间、该应用程序运行时所占用的系统资源、该应用程序运行时的耗电量,或者该应用程序运行时所产生的流量等。注意,此处所述的运行不仅指应用程序在前台运行,还可以指应用程序在后台运行。
根据本发明的另一个实施例,图3的方法还可以进一步包括步骤S202,其中在步骤S200中,应用管理模块10监听电子设备1中应用程序的状态。当所述应用管理模块10监听到应用程序从第二状态变更到第一状态时,则进至步骤S202。
在步骤S202中,应用管理模块10基于与所述应用程序所注册的所述操作系统的系统服务,解除所述四个系统服务中与所述应用程序对应的系统服务的冻结。具体地,应用管理模块10将要解除冻结的应用移出受限应用列表中。然后,所述应用管理模块10中的package setting代理模块101,改变所述受限应用列表中的应用程序的系统packagesetting的状态信息为enable;如果在步骤S201中屏蔽了所述应用程序的alarm,则alarm代理模块102撤销对所述应用程序的alarm的屏蔽,例如,将所述应用程序加入alarm通知列表中;如果在步骤S201中所述应用程序被禁止访问网络,则network policy代理模块103更新该应用的网络访问策略,允许所述应用程序访问网络;如果在步骤S201中屏蔽了所述应用程序的wake lock,则wake lock代理模块104撤销对所述应用程序的wake lock的屏蔽,例如,将所述应用程序加入wake lock通知列表中。通过以上描述的至少一种方式,所述应用管理模块10解除对于应用程序对应的系统服务的冻结。
根据本发明的另一实施例,在步骤S202中所述应用管理模块10基于与所述应用程序所注册的所述操作系统的系统服务,解除所述四个系统服务中与所述应用程序对应的系统服务的冻结,进一步包括按照预定策略确定所述应用程序是否需要解除冻结。
根据本发明的一个实施例,具体地,所述预定策略可以是判断处于第一状态的应用程序对应的系统服务是否被冻结,如果处于第一状态的应用程序对应的系统服务被冻结,则确定所述应用程序为需要解除冻结的应用程序,以解除相应的被冻结的系统服务。如果处于第一状态的应用程序对应的系统服务未被冻结,则确定所述应用程序不需要解除冻结。
根据本发明的另一实施例,具体地,所述预定策略可以是判断处于第一状态的应用程序对应的系统服务是否属于黑名单中的应用。如果处于第一状态的应用程序不属于黑名单中的应用,则确定所述应用程序为需要解除冻结的应用程序,以解除相应的被冻结的系统服务。如果处于第一状态的应用程序属于黑名单中的应用,则确定所述应用程序不需要解除冻结。
通过以上的具体实施例的描述,本领域的技术人员可以清楚地了解到本发明可借助于软件加必需的硬件平台的方式来实现,当然也可以全部通过软件、或硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁盘、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
在上面详细描述了本发明的各个实施例。然而,本领域技术人员应该理解,在不脱离本发明的原理和精神的情况下,可对这些实施例进行各种修改,组合或子组合,并且这样的修改应落入本发明的范围内。
Claims (10)
1.一种基于操作系统的应用管理方法,应用于电子设备,所述方法包括:
加载应用管理模块,以向所述操作系统注册package manager service、alarmmanager service、network policy manager service以及power manager service四个系统服务;
所述应用管理模块管理每个应用程序与所述四个系统服务中所对应的系统服务;
所述应用管理模块监听应用程序的状态;
所述应用程序的状态从第一状态变更到第二状态时,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务。
2.根据权利要求1所述的方法,其中,所述应用程序的状态从第二状态变更到第一状态时,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,解除所述四个系统服务中与所述应用程序对应的系统服务的冻结。
3.根据权利要求1所述的方法,其中,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务,进一步包括:
按照预定策略确定所述应用程序是否需要冻结。
4.根据权利要求3所述的方法,其中,所述按照预定策略确定所述应用程序是否需要冻结,进一步包括:
判断处于所述第二状态的所述应用程序是否仍然处于运行状态;
基于处于所述第二状态的所述应用程序仍然处于运行状态的第一判断结果,判断所述应用程序是否属于不受限应用列表;
基于所述应用程序不属于不受限应用列表的第二判断结果,确定所述应用程序为需要冻结的应用程序。
5.根据权利要求1所述的方法,还包括:
将所述应用加入受限应用列表中;
所述应用管理模块的package setting代理模块,基于所述受限应用列表改变系统package setting的状态信息;
所述应用管理模块的alarm代理模块,基于所述受限应用列表屏蔽应用程序的alarm;
所述应用管理模块的network policy代理模块,基于所述受限应用列表限制应用程序使用网络;
所述应用管理模块的wake lock代理模块,基于所述受限应用列表屏蔽应用程序使用唤醒锁。
6.一种基于操作系统的应用管理方法,应用于电子设备,所述电子设备包括:
应用管理模块,配置为向所述操作系统注册package manager service、alarmmanager service、network policy manager service以及power manager service四个系统服务;
所述应用管理模块管理每个应用程序与所述四个系统服务中所对应的系统服务;
所述应用管理模块监听应用程序的状态;
所述应用程序的状态从第一状态变更到第二状态时,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务。
7.根据权利要求6所述的电子设备,其中,所述应用管理模块还配置为所述应用程序的状态从第二状态变更到第一状态时,基于与所述应用程序所注册的所述操作系统的系统服务,解除所述四个系统服务中与所述应用程序对应的系统服务的冻结。
8.根据权利要求6所述的电子设备,其中,所述应用管理模块基于与所述应用程序所注册的所述操作系统的系统服务,冻结所述四个系统服务中与所述应用程序对应的系统服务,进一步包括:
所述应用管理模块按照预定策略确定所述应用程序是否需要冻结。
9.根据权利要求8所述的电子设备,其中,所述应用管理模块按照预定策略确定所述应用程序是否需要冻结,进一步包括:
所述应用管理模块判断处于所述第二状态的所述应用程序是否仍然处于运行状态;
基于处于所述第二状态的所述应用程序仍然处于运行状态的第一判断结果,判断所述应用程序是否属于不受限应用列表;
基于所述应用程序不属于不受限应用列表的第二判断结果,确定所述应用程序为需要冻结的应用程序。
10.根据权利要求6所述的电子设备,其中,
所述应用管理模块还配置为将所述应用加入受限应用列表中;其中,
所述应用管理模块的package setting代理模块,基于所述受限应用列表改变系统package setting的状态信息;
所述应用管理模块的alarm代理模块,基于所述受限应用列表屏蔽应用程序的alarm;
所述应用管理模块的network policy代理模块,基于所述受限应用列表限制应用程序使用网络;
所述应用管理模块的wake lock代理模块,基于所述受限应用列表屏蔽应用程序使用唤醒锁。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710169659.3A CN106959874B (zh) | 2017-03-21 | 2017-03-21 | 基于操作系统的应用管理方法及应用该方法的电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710169659.3A CN106959874B (zh) | 2017-03-21 | 2017-03-21 | 基于操作系统的应用管理方法及应用该方法的电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106959874A true CN106959874A (zh) | 2017-07-18 |
CN106959874B CN106959874B (zh) | 2019-11-26 |
Family
ID=59470312
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710169659.3A Active CN106959874B (zh) | 2017-03-21 | 2017-03-21 | 基于操作系统的应用管理方法及应用该方法的电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106959874B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729062A (zh) * | 2017-10-20 | 2018-02-23 | 广东欧珀移动通信有限公司 | 应用冻结方法及相关产品 |
CN107807849A (zh) * | 2017-10-20 | 2018-03-16 | 广东欧珀移动通信有限公司 | 应用冻结方法及相关产品 |
CN107832128A (zh) * | 2017-10-20 | 2018-03-23 | 广东欧珀移动通信有限公司 | 应用冻结方法及相关产品 |
CN108563528A (zh) * | 2018-03-28 | 2018-09-21 | 努比亚技术有限公司 | 一种应用控制方法、终端及计算机存储介质 |
CN108829447A (zh) * | 2018-06-08 | 2018-11-16 | Oppo(重庆)智能科技有限公司 | 终端提醒优化方法、装置、存储介质及终端设备 |
CN108920262A (zh) * | 2018-06-08 | 2018-11-30 | Oppo(重庆)智能科技有限公司 | 应用提醒优化方法、装置、存储介质及终端设备 |
CN109284040A (zh) * | 2018-08-28 | 2019-01-29 | 珠海格力电器股份有限公司 | 应用管理方法、装置和终端及计算机存储介质 |
WO2019128569A1 (zh) * | 2017-12-29 | 2019-07-04 | Oppo广东移动通信有限公司 | 应用程序冻结方法、装置、存储介质和终端 |
CN113010003A (zh) * | 2019-12-03 | 2021-06-22 | 中兴通讯股份有限公司 | 一种应用程序的管控方法、装置、终端及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101061486A (zh) * | 2004-07-12 | 2007-10-24 | Ej-苏尼特鲁有限公司 | 用于执行计算机程序的机制 |
CN103927476A (zh) * | 2014-05-07 | 2014-07-16 | 上海联彤网络通讯技术有限公司 | 实现应用程序权限管理的智能系统及方法 |
CN104268059A (zh) * | 2014-09-30 | 2015-01-07 | 上海斐讯数据通信技术有限公司 | 一种智能移动终端的应用程序查找方法和系统 |
US9111078B2 (en) * | 2006-11-10 | 2015-08-18 | Bally Gaming, Inc. | Package manager service in gaming system |
CN104992081A (zh) * | 2015-06-24 | 2015-10-21 | 华中科技大学 | 一种Android应用程序第三方代码的安全增强方法 |
-
2017
- 2017-03-21 CN CN201710169659.3A patent/CN106959874B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101061486A (zh) * | 2004-07-12 | 2007-10-24 | Ej-苏尼特鲁有限公司 | 用于执行计算机程序的机制 |
US9111078B2 (en) * | 2006-11-10 | 2015-08-18 | Bally Gaming, Inc. | Package manager service in gaming system |
CN103927476A (zh) * | 2014-05-07 | 2014-07-16 | 上海联彤网络通讯技术有限公司 | 实现应用程序权限管理的智能系统及方法 |
CN104268059A (zh) * | 2014-09-30 | 2015-01-07 | 上海斐讯数据通信技术有限公司 | 一种智能移动终端的应用程序查找方法和系统 |
CN104992081A (zh) * | 2015-06-24 | 2015-10-21 | 华中科技大学 | 一种Android应用程序第三方代码的安全增强方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729062A (zh) * | 2017-10-20 | 2018-02-23 | 广东欧珀移动通信有限公司 | 应用冻结方法及相关产品 |
CN107807849A (zh) * | 2017-10-20 | 2018-03-16 | 广东欧珀移动通信有限公司 | 应用冻结方法及相关产品 |
CN107832128A (zh) * | 2017-10-20 | 2018-03-23 | 广东欧珀移动通信有限公司 | 应用冻结方法及相关产品 |
WO2019128569A1 (zh) * | 2017-12-29 | 2019-07-04 | Oppo广东移动通信有限公司 | 应用程序冻结方法、装置、存储介质和终端 |
CN108563528A (zh) * | 2018-03-28 | 2018-09-21 | 努比亚技术有限公司 | 一种应用控制方法、终端及计算机存储介质 |
CN108829447A (zh) * | 2018-06-08 | 2018-11-16 | Oppo(重庆)智能科技有限公司 | 终端提醒优化方法、装置、存储介质及终端设备 |
CN108920262A (zh) * | 2018-06-08 | 2018-11-30 | Oppo(重庆)智能科技有限公司 | 应用提醒优化方法、装置、存储介质及终端设备 |
CN109284040A (zh) * | 2018-08-28 | 2019-01-29 | 珠海格力电器股份有限公司 | 应用管理方法、装置和终端及计算机存储介质 |
CN113010003A (zh) * | 2019-12-03 | 2021-06-22 | 中兴通讯股份有限公司 | 一种应用程序的管控方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106959874B (zh) | 2019-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106959874B (zh) | 基于操作系统的应用管理方法及应用该方法的电子设备 | |
US9952903B2 (en) | Background task resource control | |
EP1739524B1 (en) | System and method for controlling energy usage in mobile application | |
EP3245587B1 (en) | Systems and methods for providing dynamic cache extension in a multi-cluster heterogeneous processor architecture | |
US20110072254A1 (en) | Method and system for secured dynamic bios update | |
CN111796908A (zh) | 一种资源自动弹性伸缩的系统、方法及云平台 | |
US11030303B2 (en) | Time limited application enablement | |
US20180046808A1 (en) | Multi-modal memory hierarchical management for mitigating side-channel attacks in the cloud | |
CN107463437B (zh) | 应用管控方法、装置、存储介质及电子设备 | |
CN109697119A (zh) | 终端内存回收处理方法及装置 | |
CN107003891A (zh) | 虚拟机切换方法、装置、电子设备和计算机程序产品 | |
CN108205474B (zh) | 内存管理方法、终端设备、计算机装置以及可读存储介质 | |
EP2840496B1 (en) | Method, system and an executable piece of code for controlling the use of hardware resources of a computer system | |
CN113297031B (zh) | 容器集群中的容器组防护方法及装置 | |
CN110908494A (zh) | 待管理应用检测及控制方法、装置、终端及存储介质 | |
CN105893134A (zh) | 一种信息处理方法及电子设备 | |
CN110471769B (zh) | 一种虚拟机的资源管理方法及装置 | |
CN103257700A (zh) | 一种Android系统的节能方法及装置 | |
CN105824660A (zh) | 一种应用程序的更新方法及终端 | |
CN105005504A (zh) | 一种安卓平台的单任务模式实现方法及系统 | |
Kundu et al. | Energy attacks on mobile devices | |
JP6217008B2 (ja) | 電子機器、制御方法、及び、プログラム | |
CN105868006A (zh) | 应用运行的控制方法及装置 | |
WO2022204873A1 (zh) | 电子装置、系统级芯片和物理核分配方法 | |
CN112363797B (zh) | 一种虚拟机安全运行方法、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |