CN107220077B - 应用启动的管控方法和管控设备 - Google Patents

应用启动的管控方法和管控设备 Download PDF

Info

Publication number
CN107220077B
CN107220077B CN201610915687.0A CN201610915687A CN107220077B CN 107220077 B CN107220077 B CN 107220077B CN 201610915687 A CN201610915687 A CN 201610915687A CN 107220077 B CN107220077 B CN 107220077B
Authority
CN
China
Prior art keywords
application
starting
information
stock number
level
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.)
Active
Application number
CN201610915687.0A
Other languages
English (en)
Other versions
CN107220077A (zh
Inventor
胡慧锋
李杰纯
苏晓东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201610915687.0A priority Critical patent/CN107220077B/zh
Publication of CN107220077A publication Critical patent/CN107220077A/zh
Priority to EP17862584.4A priority patent/EP3528113B1/en
Priority to AU2017347578A priority patent/AU2017347578B2/en
Priority to CA3041372A priority patent/CA3041372C/en
Priority to KR1020217012634A priority patent/KR20210049204A/ko
Priority to BR112019007914A priority patent/BR112019007914A2/pt
Priority to KR1020197012743A priority patent/KR102247384B1/ko
Priority to CN201780061841.5A priority patent/CN109844716B/zh
Priority to CN202110471079.6A priority patent/CN113220360B/zh
Priority to PCT/CN2017/106839 priority patent/WO2018072726A1/zh
Application granted granted Critical
Publication of CN107220077B publication Critical patent/CN107220077B/zh
Priority to US16/387,643 priority patent/US11474831B2/en
Priority to AU2021202560A priority patent/AU2021202560B2/en
Priority to US17/958,748 priority patent/US20230025268A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability

Abstract

本申请实施例提供了一种应用启动的管控方法和管控设备。该方法包括:接收第一应用发送的用于触发启动第二应用的信息;根据该第一应用的信息和系统中当前可使用的资源量中的至少一种,确定是否需要限制该第二应用的启动,其中,该第一应用的信息用于指示该第一应用在系统中的重要程度;在确定需要限制该第二应用的启动时,限制该第二应用的启动。本申请实施例的方法和设备可以降低应用被其他应用频繁触发启动所导致的资源浪费,并从而可以提升系统性能。

Description

应用启动的管控方法和管控设备
技术领域
本申请涉及信息技术领域,并且更具体地,涉及一种应用启动的管控方法和管控设备。
背景技术
随着无线通信技术的不断发展,运营者为用户终端提供了各式各样的应用。
随着应用的增多,应用占用的资源也越来越多,应用的不合理使用将会出现操作系统越用越慢、卡顿等现象,导致系统性能下降,从而将会降低用户的体验。
因此,如何对应用进行合理的管控,以提升系统性能是一项亟待解决的问题。
发明内容
本申请实施例提供了一种应用的管控方法和管控设备,可以对应用进行合理的管控,以提升系统性能。
第一方面,提供了一种应用的管控方法,包括:根据应用的资源使用信息和用户使用信息中的至少一种,对多个应用进行排序;对排序后的该至少一个应用集合中的应用进行管控。
因此,在本申请实施例中,根据应用的资源使用信息和应用的用户使用信息中的至少一种,对多个应用进行动态排序,以对排序后的多个应用进行管控,从而,可以实时结合应用的资源使用信息和/或应用的用户使用信息,对应用进行管控,可以避免资源的浪费,提升系统性能,从而提升用户体验。
可选地,应用的资源使用信息可以包括应用所使用的资源类型和/所使用的资源的资源量。
可选地,本申请实施例提到的资源可以包括中央处理单元(Center ProcessUnit,CPU)资源、输入输出(Input/Output,IO)资源和内存资源中的至少一种。
可选地,本申请实施例提到的系统当前可使用的资源量可以是系统当前可使用的每种资源的绝对资源量,例如,系统当前可使用的内存的资源量为500M;可以是系统当前可使用的每种资源的绝对资源量与系统中每种资源总量的比值,例如,系统当前可使用的内存资源量为50%;可以是系统当前可使用多种资源量的加权资源量,其中,每种资源量对应的权值可以根据实际情况而定。
可选地,应用的用户使用信息可以包括应用的用户当前使用信息(也可以称为应用的当前运行状态信息),或应用的历史使用信息等。
可选地,应用的用户当前使用信息可以包括用于指示应用当前是否被使用,或者当前是否被前台使用,或被后台使用的信息。
可选地,应用的历史使用信息可以包括用于指示应用的使用频次、每次使用时长和应用的跳转关系中的至少一种的信息。
可选地,在本申请实施例中,应用的管控可以包括限制应用的资源、限制应用的启动、限制应用的关联应用的启动、增加应用的资源、允许应用的启动或允许应用的关联应用的启动。
可选地,根据应用的资源使用信息和用户使用信息中的至少一种对应用集合中的应用进行排序的排序方式可以按照管控的类型进行排序。
可选地,在该管控的类型包括限制应用的资源、限制应用的启动或限制应用的关联应用的启动时,应用的使用频次与应用排序的次序正相关,或,每次使用时长与应用排序的次序正相关,或,跳转对象的数量与应用排序的次序正相关,或,跳转的频次与应用排序的次序正相关,其中,管控是按照次序从小到大进行;
在该管控的类型包括允许应用的资源、允许应用的启动或允许应用的关联应用的启动时,应用的使用频次与应用排序的次序负相关,或,每次使用时长与应用排序的次序负相关,或,跳转对象的数量与应用排序的次序负相关,或,跳转的频次与应用排序的次序负相关,其中,管控是按照次序从小到大进行。
可选地,在该管控的类型包括限制应用的资源、限制应用的启动或限制应用的关联应用的启动时,应用的资源加权和与应用排序的次序负相关,其中,管控是按照次序从小到大进行。在该管控的类型包括允许应用的资源、允许应用的启动或允许应用的关联应用的启动时,应用的资源加权和与应用排序的次序正相关,其中,管控是按照次序从小到大进行。其中,应用的资源加权和是根据应用占用的多种资源中每种资源的占用量以及每种资源的权重确定的。
应理解,本申请实施例提到的两个因素的相关性,是指在假设不考虑别的因素或别的因素固定的情况下,两个因素的相关性。
应理解,在本申请实施例中,排序的次序大小还可以用于指示排序的前后,其中,排序的次序较小可以是指排序较为靠前,易被管控。
还应理解,在本申请实施例中,在本申请实施例中,排序的次序可以是指相对概念。例如,按照用户使用频次,可以对各个应用进行排序,并以列表的形式示出,列表从上到下按照使用频次从多到少列出,如果管控为限制应用的资源、限制应用的启动或限制应用的关联应用的启动,则列表中靠下的位置是排序较为靠前的位置,易被管控,如果该管控为允许应用的资源、允许应用的启动或允许应用的关联应用的启动时,则列表中靠上的位置是排序较为靠前的位置,易被管控。
可选地,在本申请实施例中,从多个应用集合中确定至少一个应用集合,该至少一个应用集合包括多个应用;根据应用的该资源使用信息和该用户使用信息中的至少一种,对该至少一个应用集合中包括的该多个应用进行排序。
可选地,在本申请实施例中,该多个应用集合是基于应用的用户使用信息和应用的属性信息中的至少一种,按照用户体验进行划分的。
可选地,基于应用的用户使用信息和应用的属性信息中的至少一种,可以将用户体验程度属于同一范围内的应用划分为属于同一应用集合。
可选地,应用集合的排序方式可以按照管控的类型进行排序。
具体地,如果应用的管控为限制应用的资源、限制应用的启动、限制应用的关联应用的启动,则用户体验程度较低的应用,则排序较为靠前,即为较易被管控的应用。
具体地,如果应用的管控为增加应用的资源、允许应用的启动或允许应用的关联应用的启动,则用户体验程度较高的应用,则排序较为靠前,即为较易被管控的应用。
可选地,在该管控包括限制应用的资源、限制应用的启动或限制应用的关联应用的启动时,在系统当前可使用的资源量小于等于第一阈值时,从该多个应用集合中,确定该至少一个应用集合。
因此,在本申请实施例中,在系统当前可使用的资源量小于等于阈值时,进行应用集合的选择、排序以及应用的资源限制、应用的启动限制或应用的关联应用的启动限制,可以结合系统当前资源的使用情况进行应用的管控,可以更进一步增加应用管控的合理性。
可选地,该多个应用集合一一对应于多个资源量阈值;将该多个应用集合中对应的资源量阈值大于等于系统当前可使用的资源量的应用集合,确定为待选择的该至少一个应用集合。可选地,该管控包括以下中的至少一种:限制排序后的该多个应用中的应用的资源;限制排序后的该多个应用中的应用的启动;和限制排序后的该多个应用中的应用的关联应用的启动。
因此,在本申请实施例中,不同的应用集合对应不同的资源量阈值,可以实现对不同应用集合的针对性的管控。
可选地,在该管控包括增加应用的资源、允许应用的启动或允许应用的关联应用的启动时,在系统当前可使用的资源量大等于第二阈值时,从该多个应用集合中,确定该至少一个应用集合。
因此,在本申请实施例中,在系统当前可使用的资源量大于等于阈值时,进行应用集合的选择、排序以及应用的资源增加、允许应用的启动或允许应用的关联应用的启动,可以结合系统当前资源的使用情况进行应用的管控,更进一步增加应用管控的合理性。
可选地,该多个应用集合一一对应于多个资源量阈值;将该多个应用集合中对应的资源量阈值小于等于系统当前可使用的资源量的应用集合,确定为待选择的该至少一个应用集合。可选地,该管控包括以下中的至少一种:增加排序后的该多个应用中的应用的资源;允许排序后的该多个应用中的应用的启动;和允许排序后的该多个应用中的应用的关联应用的启动。
可选地,在本申请实施例中,根据系统当前可使用的资源量,确定对该每个应用集合中的应用进行排序的排序方式;按照确定的该排序方式,根据应用的资源使用信息和用户使用信息中的至少一种,对该每个应用集合中的应用进行排序。
因此,在本申请实施例中,系统当前可使用的资源量不同的情况下,对应用集合中的应用的排序方式不同,可以根据资源量实时确定排序方式,使得排序方式更为合理。
可选地,在本申请实施例中,该管控包括限制应用的资源、限制应用的启动或限制应用的关联应用的启动,该至少一个应用集合包括第一应用集合,该第一应用集合包括多个应用子集;在该系统当前可使用的资源量小于等于第三阈值,且大于第四阈值时,该排序方式为按照应用的用户使用信息,对该多个应用子集中的至少一个应用子集中的应用分别进行排序,该第四阈值小于该第三阈值;在该当前可使用的资源量小于等于第四阈值,且大于第五阈值时,该排序方式为按照应用的资源使用信息,对该多个应用子集中的至少一个应用子集中的应用分别进行排序,该第五阈值小于该第四阈值;在该系统当前可使用的资源量小于等于第五阈值时,该排序方式为按照应用的资源使用信息,对该第一应用集合中的全部应用进行统一排序。
可选地,在本申请实施例中,该管控包括限制应用的资源、限制应用的启动或限制应用的关联应用的启动,该至少一个应用集合包括第二应用集合,该第二应用集合包括一个应用子集;在该系统当前可使用的资源量小于等于第六阈值,且大于第七阈值时,该排序方式为按照应用的用户使用信息,对该第二应用集合中的应用进行排序,该第七阈值小于该第六阈值;在该当前可使用的资源量小于等于第七阈值,该排序方式为按照应用的资源使用信息,对该一个应用子集中的应用进行排序。
可选地,在本申请实施例中,该管控包括增加应用的资源、应用的启动或应用的关联应用的启动,该至少一个应用集合包括第三应用集合,该第三应用集合包括多个应用子集;在该系统当前可使用的资源量大于等于第八阈值,且小于第九阈值时,该排序方式为按照应用的用户使用信息,对该多个应用子集中的至少一个应用子集中的应用分别进行排序,该第八阈值小于该第九阈值;在该当前可使用的资源量大于等于第九阈值,且小于第十阈值时,该排序方式为按照应用的资源使用信息,对该多个应用子集中的至少一个应用子集中的应用分别进行排序,该第九阈值小于该第十阈值;在该系统当前可使用的资源量小于等于第十阈值时,该排序方式为按照应用的资源使用信息,对该第三应用集合中的全部应用进行统一排序。
可选地,在本申请实施例中,该管控包括增加应用的资源、应用的启动或应用的关联应用的启动,该至少一个应用集合包括第四应用集合,该第四应用集合包括一个应用子集;在该系统当前可使用的资源量大于等于第十一阈值,且小于第十二阈值时,该排序方式为按照应用的用户使用信息,对该第二应用集合中的应用进行排序,该第十一阈值小于该第十二阈值;在该当前可使用的资源量大于等于第十二阈值,该排序方式为按照应用的资源使用信息,对该一个应用子集中的应用进行排序。
可选地,该根据应用的用户使用信息对该至少一个应用集合中的每个应用集合中的应用进行排序,包括:
根据该每个应用集合中每个应用占用的多种资源中每种资源的占用量以及每种资源的权重,对该每个应用集合中的应用进行排序。
应理解,此处是限定如何使用根据资源使用信息,进行应用的排序,并不排除根据资源使用信息和用户使用信息共同对应用进行排序。
因此,在本申请实施例中,根据多个应用中每个应用占用的多种资源中每种资源的占用量以及权重,对应用进行排序,在管控应用时,可以兼顾多种资源,从而可以避免资源浪费,提升系统性能。
可选地,该根据应用的用户使用信息对该至少一个应用集合中的每个应用集合中的应用进行排序,包括:根据应用的使用频次、每次使用时长和应用的跳转关系中的至少一种,对该每个应用集合中的应用进行排序。
应理解,此处是限定如何使用根据用户使用信息,进行应用的排序,并不排除根据资源使用信息和用户使用信息共同对应用进行排序。
因此,在本申请实施例中,根据应用的使用频次、每次使用时长和应用的跳转关系中的至少一种,对该每个应用集合中的应用进行排序,在管控应用时,可以兼顾用户的体验程度。
可选地,根据每个应用集合中的应用之间的关联性,对该每个应用集合中的应用进行分组;根据该每个应用集合中应用分组中的应用的资源使用信息和用户使用信息中的至少一种,对该每个应用集合中的应用分组进行排序;以应用分组以单位,对该至少一个应用集合中的应用分组进行管控。
可选地,可以将每个应用分组中各个应用的使用频次、每次使用时长、跳转关系数量、跳转频次、资源使用量中的至少一个分别相加,根据各个应用分组对应的参数相加后的和,对应用分组进行排序。因此,在本申请实施例中,可以将相关联的应用划分为一组,在进行应用管控的时候,以应用分组为单位进行管控,可以避免系统资源的浪费以及系统性能的下降。
第二方面,提供了一种应用启动的管控方法,包括:接收第一应用发送的用于触发启动第二应用的信息;根据该第一应用的信息和系统中当前可使用的资源量中的至少一种,确定是否需要限制该第二应用的启动,其中,该第一应用的信息用于指示该第一应用在系统中的重要程度;在确定需要限制该第二应用的启动时,限制该第二应用的启动。
因此,在本申请实施例中,在接收第一应用发送的用于触发启动第二应用的信息之后,根据该第一应用的信息和系统中当前可使用的资源中的至少一种,确定是否需要限制该第二应用的启动,在确定需要限制该第二应用的启动时,限制该第二应用的启动,可以降低应用被其他应用频繁触发启动所导致的资源浪费,并从而可以提升系统性能。
可选地,该第一应用发送的用于触发启动第二应用的信息可以是广播信息,也即第一应用可以通过广播的方式触发第二应用的启动。
可选地,该第一应用发送的用于触发启动第二应用的信息可以是专门针对该第二应用的信息,也即第一应用可以通过专门针对的方式触发第二应用的启动。
可选地,该第一应用的信息用于指示第一应用在系统中的重要程度。
可选地,第一应用的信息可以直接指示该第一应用在系统中的重要程度,例如,该第一应用的信息可以包括第一应用相对于多个应用的优先级信息。
具体地,该第一应用的信息包括第一应用的级别信息,其中,系统包括多个级别的应用,第一应用的级别信息用于指示第一应用所属的应用级别。
可选地,第一应用的信息可以间接指示第一应用在系统中的重要程度。
具体地,该第一应用的信息可以为第一应用的属性信息,该第一应用的属性信息可以用于指示该第一应用是否属于保证系统正常运行的基础应用,如果该第一应用属于保证系统正常运行的基础应用,则说明该第一应用在系统中较为重要,如果该第一应用不属于保证系统正常运行的基础应用,则说明该第一应用在系统中较为不重要。
可选地,在本申请实施例中,根据该第一应用的信息以及系统中当前可使用的资源量中的至少一种,确定是否需要限制该第二应用的启动,包括:在该第一应用的级别信息用于指示该第一应用的级别高于预定级别时,确定不限制该第二应用的启动;或者,在该第一应用的级别信息用于指示该第一应用的级别低于或等于该预定级别时,确定限制该第二应用的启动。
可选地,在本申请实施例中,根据该第一应用的信息以及系统中当前可使用的资源量中的至少一种,确定是否需要限制该第二应用的启动,包括:在系统当前可使用的资源量大于等于预定阈值时,确定不需要限制第二应用的启动,以及在系统当前可使用的资源量小于等于预定阈值时,确定需要限制第二应用的启动。
可选地,在本申请实施例中,不同应用级别对应不同的资源量阈值;根据该第一应用的信息以及系统中当前可使用的资源量中的至少一种,确定是否需要限制该第二应用的启动,包括:根据该第一应用的级别信息,确定该第一应用所属的应用级别;确定该第一应用所属的应用级别对应的资源量阈值;在该系统当前可使用的资源量小于等于该第一应用所属的应用级别对应的资源量阈值时,确定限制该第二应用的启动。
因此,在本申请实施例中,为不同的级别设置不同的资源量阈值,可以在使用应用的级别的基础上,结合系统当前可使用的资源量,来确定是否启动关联应用,可以进一步地合理的管控应用,使得系统的资源最优化使用,从而提高系统的性能。
可选地,在本申请实施例中,每个该应用级别对应至少两个资源量阈值,该至少两个资源量阈值中,不同的资源量阈值对应不同的启动限制方式;该方法还包括:确定该第一应用所属的应用级别对应的至少两个资源量阈值中,大于等于该系统当前可使用的资源量的资源量阈值中最大的资源量阈值;确定该最大的资源量阈值对应的启动限制方式;将该最大的资源量阈值对应的启动限制方式,确定为限制该第二应用启动的方式;限制该第二应用的启动,包括:按照确定的该方式,限制该第二应用的启动。
可选地,该系统中应用的应用级别是按照该系统中各个应用的历史使用信息、属性信息和当前运行状态信息中的至少一种进行划分的。
可选地,该应用的历史使用信息包括该应用的使用频次、每次使用时长以及跳转关系中的至少一种;和/或,
该应用的属性信息包括用于指示该应用是否属于保证系统正常运行的基础应用的信息;和/或,
该应用的当前运行状态信息包括用于指示该应用当前正在前台运行、或后台运行且可被用户感知、或后台运行且不可被用户感知的信息。
可选地,该系统中的应用包括以下三种应用级别:
第一应用级别,包括用于保证该系统正常运行的基础应用,以及正在前台运行的应用;
第二应用级别,包括正在后台运行且可被用户感知的应用,以及用户历史使用量大于预定值的应用;
第三应用级别,包括该系统中除该第一应用级别和该第二应用级别之外的其他应用。
可选地,第一应用级别的优先级高于第二应用级别,第二应用级别的优先级高于第三应用级别,也即第二应用级别中的应用相比第一应用级别,更易被管控,第三应用级别中的应用相比第二应用级别,更易被管控。
可选地,该方法还包括:
确定限制该第二应用启动的方式;
该限制该第二应用的启动,包括:
按照确定的该方式,限制该第二应用的启动。
可选地,确定限制该第二应用启动的方式,包括:
根据该第一应用的信息、该系统中当前可使用的资源量以及该第一应用触发启动该第二应用的方式中的至少一种,确定限制该第二应用启动的方式。
具体地,确定限制该第二应用启动的方式,包括:
根据应用的信息、该系统可使用的资源量以及应用被触发启动的方式中的至少一种与限制启动的方式的对应关系,以及该第一应用的信息、该系统中当前可使用的资源量以及该第一应用触发启动该第二应用的方式中的至少一种,确定限制该第二应用启动的方式。
具体地,不同应用级别对应不同的资源量阈值,每个该应用级别对应至少两个资源量阈值,该至少两个资源量阈值中,不同的资源量阈值对应不同的启动限制方式;该根据该第一应用的信息以及系统中当前可使用的资源量中的至少一种,确定是否需要限制该第二应用的启动,包括:
根据该第一应用的级别信息,确定该第一应用所属的应用级别;确定该第一应用所属的应用级别对应的资源量阈值;在该系统当前可使用的资源量小于等于该第一应用所属的应用级别对应的资源量阈值时,确定限制该第二应用的启动;
确定限制该第二应用启动的方式,包括:确定该第一应用所属的应用级别对应的至少两个资源量阈值中,大于等于该系统当前可使用的资源量的资源量阈值中最大的资源量阈值;确定该最大的资源量阈值对应的启动限制方式;将该最大的资源量阈值对应的启动限制方式,确定为限制该第二应用启动的方式。可选地,该启动限制方式包括延迟启动和禁止启动;其中,对于相同的应用级别,该禁止启动对应的资源量阈值小于该延迟启动的对应的资源量阈值。
可选地,该应用的信息包括该应用的级别信息,其中,该系统包括多个级别的应用,该应用的级别信息用于指示该应用所属的应用级别;和/或,
该系统可使用的资源包括CPU资源、IO资源和内存资源中的至少一种;和/或,
该应用被触发启动的方式包括被广播触发启动或被专门针对的方式触发启动。
可选地,该限制该第二应用启动的方式包括禁止启动该第二应用,或延迟启动该第二应用。可选地,该对应关系可以是预配置的。
第三方面,提供了一种应用资源的管控方法,该方法包括:确定与多个应用中每个应用关联的应用;将所述多个应用以及与所述每个应用关联的应用进行分组,以得到多个应用分组,其中,每个应用分组包括的应用为相关联的应用;对所述多个应用分组进行排序;从所述多个应用分组中确定至少一个应用分组;对所述至少一个应用分组中的应用进行管控,所述管控包括增加资源或限制资源。
因此,在本申请实施例中,将应用按照关联性进行应用分组的划分,每个分组中的应用为相关联的应用,并在需要管控时,以应用分组为单位进行管控,可以避免在管控某一应用,而未管控其相关联的应用导致的资源浪费的问题。
可选地,在本申请实施例中,按照所述每个应用分组所占用的资源量,对所述多个应用分组进行排序。
可选地,根据该多个应用集合中的应用分组中每个应用占用的多种资源中每种资源的占用量以及权重,确定该每个应用分组所占用的资源量,以用于对该多个应用集合中的应用分组进行优先级排序。
可选地,在本申请实施例中,按照所述至少两个应用所属的应用分组的排序,调整所述第一应用所属的分组。
具体地,所述管控包括限制资源,所述第一应用当前与至少两个应用中的第二应用划分为属于第一应用分组,在所述至少两个应用存在第三应用所属的第二应用分组的优先级排序高于所述第一应用分组时,将所述第一应用调整为属于所述第二应用分组,其中优先级排序低的分组为易被限制资源的分组。
具体地,所述管控包括增加资源,在所述至少两个应用存在第三应用所属的第二应用分组的优先级排序高于所述第一应用分组时,将所述第一应用调整为属于所述第二应用分组,其中优先级排序高的分组为易被增加资源的分组。
第四方面,提供了一种应用管控方法,其特征在于,包括:
根据多个应用中每个应用占用的多种资源中每种资源的占用量以及权重,确定该每种资源的资源加权和;
根据该多种应用中每个应用的资源加权和,确定第一应用;对该第一应用进行管控。
因此,在本申请实施例中,根据多个应用中每个应用占用的多种资源中每种资源的占用量以及权重,确定需要管控的应用,应用的管控可以兼顾多种资源,从而可以避免资源浪费,提升系统性能。
可选地,该根据多个应用中每个应用占用的多种资源中每种资源的占用量以及权重之前,该方法还包括:
确定多种资源中每种资源在该系统中的使用量达到对应的阈值。
可选地,根据多个应用中每个应用占用的多种资源中每种资源的占用量以及权重,确定第一应用之前,该方法还包括:
根据系统中的应用的优先级排序,从系统中的应用中确定该多个应用。
可选地,根据系统中的应用的优先级排序,从系统中的应用中确定该多个应用,包括:
按照多个应用集合的优先级排序,确定第一应用集合;
根据多个应用中每个应用占用的多种资源中每种资源的占用量以及权重,确定第一应用,包括:
按照该第一应用集合中每个应用占用的多种资源中每种资源的占用量以及权重,确定第一应用。
可选地,该系统中的应用集合是按照该系统中各个应用的资源使用信息、用户使用信息和属性信息中的至少一种,以用户体验为维度进行划分的。
第五方面,提供了一种管控设备,该设备用于执行上述第一至第四方面中任一方面或该任一方面的任一种可选的实现方式中的方法。
具体地,该设备可以包括用于执行上述第一至第四方面中任一方面或该任一方面的任一种可选的实现方式中的方法的单元。
第六方面,提供了一种管控设备,该设备包括存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且对该存储器中存储的指令的执行使得该处理器执行上述第一至第四方面中任一方面或该任一方面的任一种可选的实现方式中的方法。
第七方面,提供了一种计算机可读存储介质,在所述计算机可读存储介质上存储有指令,所述指令包括当被执行时使得一个或多个处理器执行上述第一至第四方面中任一方面或该任一方面的任一种可选的实现方式中的操作的指令。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例的管控设备的示意性框图。
图2是根据本申请实施例的管控方法的示意性流程图。
图3是根据本申请实施例的应用的关联性的示意性图。
图4是根据本申请实施例的应用的关联性的示意性图。
图5是根据本申请实施例的管控方法的示意性流程图。
图6是根据本申请实施例的管控方法的示意性流程图。
图7是根据本申请实施例的管控方法的示意性流程图。
图8是根据本申请实施例的管控设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供的应用的管控方法可以应用于管控设备。该管控设备可以为终端设备,该终端设备也可称之为用户设备(英文:User Equipment,UE)、移动台(英文:Mobile Station,MS)、移动终端(英文:Mobile Terminal)等。可选的,该终端设备(以下简称终端)可以具备经无线接入网(英文:Radio Access Network,RAN)与一个或多个核心网进行通信的能力。例如,终端可以是移动电话(或称为“蜂窝”电话)、机顶盒、穿戴设备、物联网(Internet of Things,IOT)设备或具有移动性质的计算机等。例如,终端还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置。应理解的是,除了终端设备以外,本申请实施例提供的应用管控方法也可以应用于其他类型的计算机系统。
请参考图1,为本申请实施例提供的管控设备的结构示意图。如图1所示,管控设备100包括存储器180、处理器150以及显示设备140。存储器180存储计算机程序(或称程序代码),该计算机程序包括操作系统程序182和应用程序181等。处理器150用于读取存储器180中的计算机程序,然后执行计算机程序定义的方法,例如处理器150读取操作系统程序182从而在该管控设备100上运行操作系统以及实现操作系统的各种功能,或读取一种或多种应用程序181,从而在该管控设备上运行应用或者进行应用程序的广播消息的处理等。
处理器150可以包括一个或多个处理器,例如,处理器150可以包括一个或多个中央处理器,或者包括一个或者多个中央处理器和一个或者多个应用处理器。当处理器150包括多个处理器时,这多个处理器可以集成在同一块芯片上,也可以各自为独立的芯片。一个处理器可以包括一个或多个处理器核(或称处理核),以下实施例均以多核为例来介绍,但是本申请实施例提供的广播消息的管理方法也可以应用于单核处理器,利用单核处理器的分时工作原理执行多个应用程序的并行运行。
另外,存储器180还存储有除计算机程序之外的其他数据183,其他数据183可包括操作系统182或应用程序181被运行后产生的数据等,该数据包括系统数据(例如操作系统的配置参数)和用户数据,例如各个应用的资源使用信息就是典型的用户数据。
存储器180一般包括内存和外存。内存可以为随机存储器(RAM),只读存储器(ROM),以及高速缓存(CACHE)等。外存可以为硬盘、光盘、USB盘、软盘或磁带机等。计算机程序通常被存储在外存上,处理器在执行处理前会将计算机程序从外存加载到内存。
操作系统程序182中包含了可实现本申请实施例提供的资源管控方法的计算机程序,从而使得处理器150读取到该操作系统程序182并运行该操作系统后,该操作系统可具备本申请实施例提供的应用管控方法。
管控设备100还可以包括输入设备130,用于接收输入的数字信息、字符信息或接触式触摸操作/非接触式手势,以及产生与管控设备100的用户设置以及功能控制有关的信号输入等。具体地,本申请实施例中,该输入设备130可以包括触控面板131。触控面板131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板131上或在触控面板131的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给该处理器150,并能接收处理器150发来的命令并加以执行。例如,用户在触控面板131上用手指双击一个应用程序的图标,触摸检测装置检测到此次双击带来的这个信号,然后将该信号传送给触摸控制器,触摸控制器再将这个信号转换成坐标发送给处理器150,处理器150根据该坐标和该信号的类型(如双击)执行启动该应用程序等操作,最后将该应用程序的操作界面显示在显示面板141上,从而实现“打开”应用程序。
触控面板131可以采用电阻式、电容式、红外线以及表面声波等多种类型实现。除了触控面板131,输入设备130还可以包括其他输入设备132,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
管控设备100包括的显示设备140,包括显示面板141,用于显示由用户输入的信息或提供给用户的信息以及管控设备100的各种菜单界面等,在本申请实施例中主要用于显示应用程序的用户操作界面等信息。可选的,可以采用液晶显示器(英文:Liquid CrystalDisplay,LED)或有机发光二极管(英文:Organic Light-Emitting Diode,OLED)等形式来配置显示面板141。在其他一些实施例中,触控面板131可覆盖显示面板141上,形成触摸显示屏。
除以上之外,管控设备100还可以包括用于给其他模块供电的电源190以及用于拍摄照片或视频的摄像头160。管控设备100还可以包括一个或多个传感器120,例如重力传感器、加速度传感器、光传感器等。管控设备100还可以包括无线射频(英文:RadioFrequency,RF)电路110,用于与无线网络设备进行网络通信,还可以包括WiFi模块170,用于与其他设备进行WiFi通信等。
下面的实施例将以管控设备为执行主体对本申请实施例提供的应用管控方法进行描述。本申请实施例提供的管控方法可以实现在图1所示的操作系统程序182中。
在操作系统程序的运行过程中,运行的应用占用的资源较多将会导致操作系统程序的运行速度过慢或卡顿的问题,运行的应用占用的资源较少,则会造成系统中可用功能无法满足用户需求,以及应用的运行速度。
例如,当退出一个应用后,系统中的内存不会立刻清理该应用,这样该应用在下次被启动后,可以不需要重新启动,实现快速启动。但是系统的内存是有限的,随着应用的不断增加,可用内存会越来越少。
再例如,应用A与应用B是关联应用,应用A与应用B需要联合才能实现某一功能,在应用A被清除资源时,由于应用B还未清除资源,则会触发应用A启动,造成系统资源的浪费,从而使得操作系统程序的运行速度较慢。
再例如,应用A与应用B是关联应用,应用A与应用B需要联合才能实现某一功能,应用A会频繁触发应用B的启动,造成系统资源的浪费,从而使得操作系统程序的运行速度较慢。
再例如,运行的应用占用的资源较少,如果系统当前可用的CPU资源的资源较多,不为运行的应用重分配CPU资源,会造成资源的浪费。
为此,本申请实施例提供了一种应用的管控方法,可以避免资源浪费,并从而提升系统性能。
在介绍本申请实施例中的应用的管控方法,对本申请实施例提到的术语进行介绍。
可选地,本申请实施例中的应用可以包括至少一个进程,可以实现特定功能的一个或多个进程均可以称为应用。
例如,功能A包括子功能1和子功能2,其中,可以将用于实现功能A的全部进程划分为一个应用,也可以将子功能1对应的进程划分为一个应用,将子功能2对应的进程划分为另一个应用。
本申请实施例提到的应用还可以称为应用程序。
本申请实施例的应用按照属性可以分为属于保证系统正常运行的基础应用,以及其他应用,其中,该基础应用可以包括出厂预置的具有永久性(persistent)属性的应用和本地(native)应用等。
可选地,在本申请实施例中,多个应用之间相关联是指该多个应用需要联合才能实现特定功能(该特定功能可以为上述功能A、子功能1或子功能2)。
可选地,在本申请实施例中,应用的管控可以包括限制应用的资源、限制应用的启动、限制应用的关联应用的启动、增加应用的资源、允许应用的启动或允许应用的关联应用的启动。
可选地,在本申请实施例中,对应用进行资源限制可以是指全部清除该应用所使用的资源,例如,内存资源、CPU资源或IO资源,或者,可以指降低该应用的资源使用量,例如,降低CPU的资源使用量。
可选地,在本申请实施例中,应用的资源占用量或使用量可以是指应用占用的资源与系统中的资源的量的比值,系统当前可使用的资源是指当前可使用的资源与系统中的资源的量的比值。当然,本申请实施例提到的资源量也可以是指绝对量,例如,内存的使用量可以是指占用了多少KB。
应理解,本申请实施例可以应用Andriod(安卓)操作系统,也可以应用其他操作系统。
以下将结合图2至图7对本申请实施例的应用的管控方法进行详细描述。本申请实施例的管控方法可以由管控设备执行,该管控设备可选地可以为图1所示的管控设备。
图2是根据本申请实施例的应用的管控方法200的示意性流程图。该方法200包括以下内容。
在210中,根据应用的资源使用量和应用的用户使用信息中的至少一种,对多个应用进行排序。
应理解,本申请实施例提到的“多个”可以指至少两个。
在220中,对排序后的多个应用进行管控。
可选地,应用的用户使用信息可以包括应用的用户当前使用信息,或应用的历史使用信息等。
可选地,应用的用户当前使用信息可以包括用于指示应用当前是否被使用的信息。
可选地,应用的历史使用信息可以包括用于指示应用的使用频次、每次使用时长和应用的跳转关系中的至少一种的信息。
可选地,应用的资源使用信息可以包括应用所使用的资源类型和/所使用的资源的资源量。
可选地,根据应用的资源使用信息和用户使用信息中的至少一种对应用集合中的应用进行排序的排序方式可以按照管控的类型进行排序。
可选地,在管控包括限制应用的资源、限制应用的启动或限制应用的关联应用的启动时,
应用的使用频次与应用排序的次序正相关,或,
每次使用时长与应用排序的次序正相关,或,
跳转对象的数量与应用排序的次序正相关,或,
跳转的频次与应用排序的次序正相关,其中,管控是按照次序从小到大进行;
在管控包括允许应用的资源、允许应用的启动或允许应用的关联应用的启动时,
应用的使用频次与应用排序的次序负相关,或,
每次使用时长与应用排序的次序负相关,或,
跳转对象的数量与应用排序的次序负相关,或,
跳转的频次与应用排序的次序负相关,其中,管控是按照次序从小到大进行。
可选地,在管控包括限制应用的资源、限制应用的启动或限制应用的关联应用的启动时,应用的资源加权和与应用排序的次序负相关,其中,管控是按照次序从小到大进行;
在管控包括增加应用的资源、允许应用的启动或允许应用的关联应用的启动时,应用的资源加权和与应用排序的次序正相关,其中,管控是按照次序从小到大进行。其中,应用的资源加权和是根据应用占用的多种资源中每种资源的占用量以及每种资源的权重确定的。
应理解,在本申请实施例中,排序的次序大小还可以用于指示排序的前后,其中,排序的次序较小可以是指排序较为靠前,易被管控。
应理解,本申请实施例提到的两个因素的相关性,是指在假设不考虑别的因素或别的因素固定的情况下,两个因素的相关性。但是这并不代表不考虑别的因素。
例如,可以应用的资源使用量和应用的用户使用信息共同对多个应用进行排序。
具体地,可以按照资源使用量分别对多个应用进行排序,排序的序号可以是应用a是1、应用b是2、应用c是3和应用d是4;并按照用户使用信息分别对多个应用进行排序,例如,排序的序号可以是a是3,b是1,c是2,d是4,可以将各个应用的排序序号分别相加,例如,相加后的序号可以是a是4,b是3,c是5,d是8,并按相加后的序号大小重新进行应用的排序,例如此时,b是1,a是2,c是3,d是4。
当然,可以对各个序号进行加权处理,例如,资源使用量对应的排序权值是0.3,用户使用信息对应的排序权值是0.7,则加权处理后的各个应用的排序序号可以是a是2.4,b是1.3,c是2.3,d是4.0,并按加权处理后的序号大小重新进行应用的排序,例如此时,b是1,a是2,c是3,d是4。
可选地,可以从多个应用集合中选择至少一个应用集合,该至少一个应用集合包括多个应用,可以根据应用的资源使用量和应用的用户使用信息中的至少一种,对该至少一个应用集合中包括的多个应用进行排序。
可选地,在本申请实施例中,所述多个应用集合是基于应用的用户使用信息和应用的属性信息中的至少一种,按照用户体验进行划分和排序的.
可选地,基于应用的用户使用信息和应用的属性信息中的至少一种,可以将用户体验程度属于同一范围内的应用划分为属于同一应用集合;
可选地,应用集合的排序方式可以按照管控的类型进行排序。
例如,如果应用的管控为对限制应用的资源、限制应用的启动、限制应用的关联应用的启动,则用户体验程度较低的应用,则排序较为靠前,即为较易被管控的应用。
例如,如果应用的管控为增加应用的资源、允许应用的启动或允许应用的关联应用的启动,则用户体验程度较高的应用,则排序较为靠前,即为较易被管控的应用。
可选地,在所述管控包括限制应用的资源、限制应用的启动或限制应用的关联应用的启动时,在系统当前可使用的资源量小于等于第一阈值时,从所述多个应用集合中,确定所述至少一个应用集合。
应理解,在本申请实施例中,根据x,确定y,并不代表不根据其他因素,例如,可以根据x以及z,确定y。
可选地,可以根据应用的用户使用信息和应用的属性信息,按照用户体验维度进行以下应用集合的划分和排序。
(1)必须保障应用集合
该集合中的应用是需要保障资源的应用,是所有集合中优先级最高的应用,该集合中的应用可以包括以下a和b两个子集。
a、保证操作系统正常运行的应用;该子集中的应用可以包括出厂预置的具有永久性(persistent)属性的应用和本地应用。
b、前台应用,其中,该前台应用可以是指正在运行的且用户视觉可见的应用。
必须保障应用集合包括系统运行必不可少的应用以及对用户体验很重要的应用。如果不进行资源保障,可以直接导致系统无法正常运行或用户功能无法使用等问题。这类应用不需对其进行资源限制,是必须要保障的应用,在系统资源不够的情况下,可以不对该集合中的应用进行管控。
(2)推荐保障应用集合
该集合中的应用可以是尽量保障资源的应用,优先级低于必须保障应用集合,该集合中的应用可以包括以下c和d两个子集。
c、关键后台应用,其中,关键后台应用可以包括用户可以感知(但是视觉不可见)的后台应用;例如,该应用包括后台音乐播放应用、后台导航应用。
d、用户经常使用的应用。
推荐保障应用集合中的应用可以在系统资源严重不足时,进行资源的限制。在系统运行中,属于推荐需要保障系统资源的列表。
(3)可限制应用集合
该集合中的应用可以是尽量限制的应用,优先级最低的集合,该集合中的应用可以包括以下e和f子集。
e、系统不重要的应用,例如,可以包括用户不经常使用的应用。
f、恶意应用,例如,可以是病毒,或者恶意占用较高资源的应用。
在系统资源充足时,可以不对该集合中的应用资源限制。但是在系统资源不足时,可以限制和清理该集合中的应用。
应理解,以上划分方式只是本申请实施例的一个举例,不应对本申请实施例的范围造成限定。
还应理解,本申请实施例提到的优先级高低、排序次序和排序前后是相对的概念,可以根据具体情况而定。
例如,按照用户使用频次,可以对各个应用进行排序,并以列表的形式示出,列表从上到下按照使用频次从多到少列出,如果管控为限制应用的资源、限制应用的启动或限制应用的关联应用的启动,则列表中靠下的位置是排序较为靠前的位置,易被管控,如果所述管控为允许应用的资源、允许应用的启动或允许应用的关联应用的启动时,则列表中靠上的位置是排序较为靠前的位置,易被管控。例如,在本申请实施例中,优先级高可以是指对用户或系统而言较为重要,不易被限制资源,易被启动或关联启动。
再例如,优先级可以与管控的类型有关,例如,对于限制资源而言,优先级高可以意味着易被限制资源,例如,对于增加资源而言,优先级高意味着易被增加资源。
本申请实施例多处是以对用户或系统的重要性进行的优先级,但是应理解,本申请实施例并不限于此。
以上提到的用户经常使用的阈值可以根据用户的使用频次以及每次使用的时长进行配置。
可选地,在本申请实施例中,可以按照上述多个应用集合的排序,从多个应用集合中选择至少一个应用集合,并对选择的至少一个应用集合中的每个应用集合中的应用进行排序。
其中,选择的应用集合的数量可以根据系统当前可使用的资源量进行确定。
例如,如果系统当前可使用的资源量小于阈值a,则选择一个应用集合,如果系统当前可使用的资源量小于阈值b,则选择两个应用集合,其中,b小于a。
再例如,如果系统当前可使用的资源量大于阈值c,则选择一个应用集合,如果系统当前可使用的资源量大于阈值d,则选择两个应用集合,其中,d大于c。
可选地,多个应用集合一一对应于多个资源量阈值,将所述多个应用集合中对应的资源量阈值大于等于系统当前可使用的资源量的应用集合,确定为待选择的所述至少一个应用集合。
此时,管控包括以下中的至少一种:限制排序后的所述多个应用中的应用的资源;限制排序后的所述多个应用中的应用的启动;和限制排序后的所述多个应用中的应用的关联应用的启动。
例如,对于内存而言,集合A对应于阈值200M,集合B对应于阈值400M,在系统当前可使用的内存资源量小于等于400M时,可对集合B中的应用进行排序,在系统当前可使用的内存资源量小于等于200M,可对集合A和B中的应用进行排序。
可选地,多个应用集合一一对应于多个资源量阈值;将所述多个应用集合中对应的资源量阈值小于等于系统当前可使用的资源量的应用集合,确定为待选择的所述至少一个应用集合。此时,所述管控包括以下中的至少一种:增加排序后的所述多个应用中的应用的资源;允许排序后的所述多个应用中的应用的启动;和允许排序后的所述多个应用中的应用的关联应用的启动。
例如,对于内存而言,集合C对应于阈值600M,集合D对应于阈值800M,在系统当前可使用的内存资源量大于等于600M时,可对集合C中的应用进行排序,在系统当前可使用的内存资源量大于等于800M,可对集合C和D中的应用进行排序。
应理解,本申请实施例对排序和管控的顺序不做限定。
例如,系统当前可使用的资源量小于等于阈值时,选择出至少两个应用集合时,可以先对一个集合中的应用进行排序,并限制集合中的资源,如果限制该集合中的资源即可使得系统当前可使用的资源量大于其他应用集合对应的阈值时,则不对其他应用集合进行排序。
例如,系统当前可使用的资源量大于等于阈值时,选择出至少两个应用集合时,可以先对一个集合中的应用进行排序,并增加集合应用中的资源,如果增加该集合中的资源即可使得系统当前可使用的资源量小于等于其他应用集合对应的阈值时,则不对其他应用集合进行排序。
再例如,还可以先对所有应用进行排序,并对排序后的应用进行管控。
可选地,在本申请实施例中,可以根据系统当前可使用的资源量,确定对每个应用集合中的应用进行排序的排序方式;根据确定的方式,对每个应用集合中的应用进行排序。
可选地,在本申请实施例中,所述管控包括限制应用的资源、限制应用的启动或限制应用的关联应用的启动,所述至少一个应用集合包括第一应用集合,所述第一应用集合包括多个应用子集;在所述系统当前可使用的资源量小于等于第三阈值,且大于第四阈值时,所述排序方式为按照应用的用户使用信息,对所述多个应用子集中的至少一个应用子集中的应用分别进行排序,所述第四阈值小于所述第三阈值;在所述当前可使用的资源量小于等于第四阈值,且大于第五阈值时,所述排序方式为按照应用的资源使用信息,对所述多个应用子集中的至少一个应用子集中的应用分别进行排序,所述第五阈值小于所述第四阈值;在所述系统当前可使用的资源量小于等于第五阈值时,所述排序方式为按照应用的资源使用信息,对所述第一应用集合中的全部应用进行统一排序。
例如,假设选择了推荐保障应用集合,该推荐保障应用集合包括关键后台应用子集和用户经常使用应用子集,如果系统当前可使用的资源量小于等于50%且大于35%,可以按照应用的用户使用信息,可对用户经常使用应用子集中的应用进行排序,并限制用户经常使用应用子集中的应用的资源,如果在全部限制了用户经常使用应用子集中的应用的资源之后,系统当前可使用的资源量仍然达不到要求,则可以按照应用的用户使用信息,对关键后台应用子集中的应用进行排序,按照关键后台应用子集中的应用的排序,限制关键后台应用子集中的应用的资源;或者,可以按照应用的用户使用信息,对关键后台应用子集中的应用进行排序,以及对用户经常使用应用子集中的应用进行排序,先对用户经常使用应用子集中的应用按照排序进行资源的限制,如果在全部限制了用户经常使用应用子集中的应用的资源之后,系统当前可使用的资源量仍达不到要求,则可以按照关键后台应用子集中的应用的排序,限制关键后台应用子集中的应用的资源。
如果系统当前可使用的资源量小于等于35%,且大于20%,则可以按照应用的资源使用信息对用户经常使用应用子集和/或关键后台应用子集进行排序,其中,排序以及资源限制方式可以参考利用应用的用户使用信息进行排序和资源限制方式的描述。
如果系统当前可使用的资源量小于等于20%,则可以按照应用的资源使用信息和用户使用信息,对推荐保障应用集合中的应用进行统一排序,也即,可以对用户经常使用应用子集和关键后台应用子集进行打乱排序,此时已经在排序过程中,已经不存在用户经常使用应用子集和关键后台应用子集,并对打乱排序后的应用进行资源的限制。
应理解,除了以上描述的排序方式,本申请实施例还有其他排序方式,本申请实施例并不对此进行特别限定。
例如,在当前可使用的资源量小于等于第三阈值,且大于第四阈值时,排序方式为按照应用的资源使用信息和应用的用户使用信息,共同对多个应用子集中的至少一个应用子集分别进行排序;在系统当前可使用的资源量小于等于第四阈值时,排序方式为按照应用的资源使用信息和应用的用户使用信息,共同对该第一应用集合中的全部应用进行统一排序。
再例如,在当前可使用的资源量小于等于第三阈值,且大于第四阈值时,排序方式为按照应用的用户使用信息,共同对第一应用集合中的全部应用进行统一排序;在系统当前可使用的资源量小于等于第四阈值时,排序方式为按照应用的资源使用信息和应用的用户使用信息,共同对第一应用集合中的全部应用进行统一排序。
可选地,在本申请实施例中,所述管控包括增加应用的资源、允许应用的启动或允许应用的关联应用的启动,所述至少一个应用集合包括第三应用集合,所述第三应用集合包括多个应用子集;在所述系统当前可使用的资源量大于等于第八阈值,且小于第九阈值时,所述排序方式为按照应用的用户使用信息,对所述多个应用子集中的至少一个应用子集中的应用分别进行排序,所述第八阈值小于所述第九阈值;在所述当前可使用的资源量大于等于第九阈值,且小于第十阈值时,所述排序方式为按照应用的资源使用信息,对所述多个应用子集中的至少一个应用子集中的应用分别进行排序,所述第九阈值小于所述第十阈值;在所述系统当前可使用的资源量小于等于第十阈值时,所述排序方式为按照应用的资源使用信息,对所述第三应用集合中的全部应用进行统一排序。
可选地,在本申请实施例中,所述管控包括增加应用的资源、允许应用的启动或允许应用的关联应用的启动,所述至少一个应用集合包括第四应用集合,所述第四应用集合包括一个应用子集;在所述系统当前可使用的资源量大于等于第十一阈值,且小于第十二阈值时,所述排序方式为按照应用的用户使用信息,对所述第二应用集合中的应用进行排序,所述第十一阈值小于所述第十二阈值;在所述当前可使用的资源量大于等于第十二阈值,所述排序方式为按照应用的资源使用信息,对所述一个应用子集中的应用进行排序。
应理解,本申请实施例提到的阈值可以根据实际情况而定,例如,可以根据用户对系统性能的要求而定。
还应理解,本申请实施例中,“第一”、“第二”和“第三”等仅仅是为了描述的方便,不应赋予过多的含义。例如,在不存在第一阈值的情况下,可以存在第二阈值。
还应理解,本申请实施例提到的第一阈值、第二阈值、第三阈值等,除非特别说明不同,各个阈值可以相等。
例如,第一阈值可以等于第三阈值、第四阈值、第五阈值、第六阈值或第七阈值。
例如,第三阈值可以等于第六阈值或第七阈值。
例如,第四阈值可以等于第六阈值或第七阈值。
例如,第五阈值可以等于第六阈值或第七阈值。
例如,第二阈值可以等于第八阈值、第九阈值、第十阈值、第十一阈值或第十二阈值。
例如,第八阈值可以等于第十一阈值或第十二阈值。
例如,第九阈值可以等于第十一阈值或第十二阈值。
例如,第十阈值可以等于第十一阈值或第十二阈值。
可选地,在本申请实施例中,上述系统当前可使用的资源量或用户的资源使用量可以是单个资源的资源量,或多种资源的加权量。
例如,如果系统中的CPU当前可使用的资源量小于等于预设的阈值时,则可以按照至少一个应用集合中的各个应用的CPU的使用量,对各个应用进行排序;
再例如,如果系统中的内存当前可使用的资源量小于等于预设的阈值时,则可以按照至少一个应用集合中的各个应用的内存使用量,对各个应用进行排序。
再例如,如果系统中的CPU当前可使用的资源量以及内存当前可使用的资源量均小于等于各自对应的阈值,则根据每个应用集合中每个应用占用的CPU以及内存的占用量以及权重,对每个应用集合中的应用进行排序。
可选地,在本申请实施例中,可以按照各个应用之间的关联性,对应用集合中的应用进行分组。
本申请实施例提到的应用的关联性是指应用在功能上相互依赖,例如,在完成某一功能时,即需要应用1,又需要应用2。
如图3所示,应用1、应用2和应用3中任一个应用均是与应用4相关联的应用,应用1、应用2和应用3在启动过程中或在运行过程中,可以拉起应用4的启动。
如果系统当前可使用的资源量较低,应用4的启动会造成系统资源的浪费以及系统性能的下降;或者应用1、应用2和应用3为一恶意或不重要的应用,应用4被拉起则同样会造成系统资源的浪费,系统性能的下降,甚至会产生安全问题。
如图4所示,应用5、应用6和应用7是相互关联的,假设当前内存资源不足时,需要从内存中清除应用,假设应用5的优先级较低,则可以先清除应用5,由于应用6和应用7是与应用5相关联的应用,应用6或应用7在运行过程中会拉起应用5,而应用5由于内存资源的不足,会不停的被清除,而又被应用6或应用7不停的拉起,从而造成资源的浪费。
因此,在本申请实施例中,可以将相关联的应用划分为一组,在进行资源管控的时候,以应用分组为单位进行管控,可以避免系统资源的浪费以及系统性能的下降。
例如,应用A在启动过程或在运行过程中,会触发应用B的启动,则确定应用A和应用B相关联,此时,可以将应用A和应用B划分为一组。
可选地,如果某一应用与多个应用均关联,则可以该应用划分为与多个应用中的任意一个应用划分为一组,具体地,可以将该应用与具有高优先级的应用划分为一组。
可选地,在本申请实施例中,可以对各个应用分组进行优先级排序。
具体地,可以根据各个应用分组中的应用的资源使用信息和应用的用户使用信息中的至少一种,对应用分组进行优先级排序。
可选地,在本申请实施例中,在对应用分组进行优先级排序之后,可以根据该优先级排序调整分组,例如,应用A与应用B关联,且与应用C关联,如果将应用A与应用B划分一个分组,应用C划分为另一分组,如果C所处的分组的优先级高于应用A与应用B所处的分组,则可以将应用A调整为与应用C划分为一组。
可选地,在本申请实施例中,可以以应用分组为单位,对应用集合进行资源管控。
例如,在系统的可使用的资源小于等于预定阈值时,限制至少一个应用分组的资源。
可选地,在本申请实施例中,在确定第一应用触发启动第二应用时,可以根据第一应用的优先级信息,确定是否需要启动第二应用;在确定需要启动第二应用时,启动第二应用。
例如,假设第一应用属于优先级较高的应用集合,则确定启动第二应用,假设第一应用属于优先级较低的应用集合,则确定不启动第二应用。
再例如,假设第一应用属于某一应用集合中,优先级排序较为靠前的应用,则可以确定启动第二应用,假设一应用属于该应用集合中,优先级排序较为靠后的应用,则可以确定不启动该第二应用。
因此,在本申请实施例中,根据应用的资源使用信息和应用的用户使用信息中的至少一种,对应用进行排序,以对排序后的应用进行管控,从而,可以实时结合应用的资源使用信息和/或应用的用户使用信息,对应用进行管控,可以避免资源的浪费,提升系统性能,从而提升用户体验。
图5是根据本申请实施例的应用的启动方法300的示意性流程图。如图5所示,该方法300可以包括以下内容。
在310中,接收第一应用发送的用于触发启动第二应用的信息。
可选地,在本申请实施例中,第一应用在启动时或在运行过程中,可以触发第二应用的启动。
例如,在启动购物应用时,购物应用的启动会触发支付应用的启动,或者,在购物应用的运行过程中,会触发支付应用的启动。
可选地,在本申请实施例中,第一应用触发启动第二应用的方式可以是广播的方式,例如,第一应用广播信息,该信息可以触发多个应用的启动,该多个应用包括第二应用。
可选地,在本申请实施例中,第一应用触发启动第二应用的方式可以是专门针对第二应用的触发方式进行触发。
在320中,根据第一应用的信息和系统中当前可使用的资源量中的至少一种,确定是否需要限制该第二应用的启动,其中,该第一应用的信息用于指示第一应用在系统中的重要程度。
可选地,在本申请实施例中,系统中当前可使用的资源可以包括中央处理单元(Center Process Unit,CPU)资源、内存资源和输入输出(Input/Output,IO)资源中的至少一种。
可选地,在本申请实施例中,该第一应用的信息用于指示第一应用在系统中的重要程度。
可选地,第一应用的信息可以直接指示该第一应用在系统中的重要程度,例如,该第一应用的信息可以包括第一应用相对于多个应用的优先级信息。
具体地,该第一应用的信息包括第一应用的级别信息,其中,系统包括多个级别的应用,第一应用的级别信息用于指示第一应用所属的应用级别。
可选地,第一应用的信息可以间接指示第一应用在系统中的重要程度,
具体地,该第一应用的信息包括第一应用的属性信息,该第一应用的属性信息可以用于指示该第一应用是否属于保证系统正常运行的基础应用,如果该第一应用属于保证系统正常运行的基础应用,则说明该第一应用在系统中较为重要,如果该第一应用不属于保证系统正常运行的基础应用,则说明该第一应用在系统中较为不重要。
在本申请实施例的一种实现方式中,在确定第二应用被第一应用触发启动时,可以判断当前系统可使用的资源量是否小于等于设置的阈值,如果小于等于设置的阈值,则限制该第二应用的启动,如果大于设置的阈值,则可以启动该第二应用。
可选地,此处提到的阈值可以是针对多种资源分别设置阈值,例如,针对CPU资源设置的资源阈值为50%,针对内存设置的资源阈值为60%,针对IO资源设置的阈值为70%;只有同时满足CPU可用的资源量大于等于50%,内存可用的资源量大于等于60%,以及IO资源可用的资源量大于等于70%时,才启动第二应用,任一种资源的可用资源量没有达到阈值,则限制第二应用的启动;或者在任一种资源可用的资源量大于等于设置的阈值时,则启动第二应用。
可选地,本申请实施例中,还可以针对多种资源设置单个阈值,例如,设置的阈值为55%,针对不同的资源可以设置不同的权重,例如,CPU的权重为0.5,内存设置的权重为0.4,IO设置的权重为0.3,假设系统CPU当前可用的资源量为50%、内存可用的资源量为60%,IO资源可用的资源量为70%,则可以计算系统当前可用的资源量的加权值,即0.5×50%+0.4×50%+0.3×70%=66%,由于66%大于55%,则确定启动第二应用。
可选地,本申请实施例可以仅针对一种资源设置阈值,例如,仅针对CPU设置阈值,例如,CPU设置的阈值为50%,只要在系统当前可使用的CPU资源量小于等于50%时,则确定限制第二应用的启动,而不管内存资源或IO资源的可使用量。
在本申请实施例的另一种实现方式中,在确定第一应用触发启动第二应用时,可以判断第一应用的优先级是否属于优先级较高的应用,如果属于优先级较高的应用,则可以启动第二应用,如果不属于优先级较高的应用,则可以限制该第二应用的启动。
例如,假设共有10个应用,在该第一应用的优先级排序属于前5位,则可以确定启动该第二应用,否则,则可以确定需要限制该第二应用的启动。
在本申请实施例的另一种实现方式中,在该第一应用的级别信息用于指示该第一应用的级别高于预定级别时,确定不限制该第二应用的启动;或者,在该第一应用的级别信息用于指示该第一应用的级别低于或等于该预定级别时,确定限制该第二应用的启动。
例如,假设共有3个应用级别,级别A的优先级高于级别B,级别B的优先级高于级别C,如果该第一应用属于该级别A,则可以启动该第二应用,如果该应用属于级别C,则确定需要限制该第二应用的启动。
在本申请实施例的另一种实现方式中,该系统中的应用对应多个级别,不同应用级别对应不同的资源量阈值;则管控设备可以根据该第一应用的级别信息,确定该第一应用所属的应用级别;确定该第一应用所属的应用级别对应的资源量阈值;在该系统当前可使用的资源量小于等于该第一应用所属的应用级别对应的资源量阈值时,确定限制该第二应用的启动。
例如,系统中的应用设置有三个级别,可以设置最高级别的资源量的阈值为0,也即如果第一应用的级别属于最高级别,则可以直接启动第二应用;可以设置中间级别的资源量阈值为50%,也即如果第一应用属于中间级别,在当前系统可使用的资源量小于等于50%时,则可以确定需要限制该第二应用的启动;在该系统中的应用属于最低级别的应用时,则可以该级别对应的资源量阈值为100%,相当于在任何情况下,均需限制该第二应用的启动。
可选地,对系统中的应用进行排序可以是以应用为单位,依次对各个应用进行排序。
例如,系统中包括应用A、应用B、应用C、应用D、应用E、应用F和应用G,可以根据各个应用的资源使用信息、用户使用信息和属性信息,依次对各个应用进行排序,例如,应用A的优先级最高,应用D和应用C的优先级次之,应用E和应用G的优先级再次之,应用B的优先级再次之,应用F的优先级最低。
可选地,对系统中的应用进行优先级排序可以是对各个应用进行集合的划分,并对各个集合进行优先级排序。
可选地,每个应用集合对应于一个应用级别。
可选地,在本申请实施例中,该系统中应用的应用级别是按照该系统中各个应用的历史使用信息、属性信息和当前运行状态信息中的至少一种进行划分的。
可选地,该应用的历史使用信息包括该应用的使用频次、每次使用时长以及跳转关系中的至少一种;和/或,
该应用的属性信息包括用于指示该应用是否属于保证系统正常运行的基础应用的信息;和/或,
该应用的当前运行状态信息包括用于指示该应用当前正在前台运行、或后台运行且可被用户感知、或后台运行且不可被用户感知的信息。
例如,可以将各个应用划分以下三个级别,也可以称为三个应用集合:
(1)第一应用级别,包括用于保证该系统正常运行的基础应用,以及正在前台运行的应用;
(2)第二应用级别,包括正在后台运行且可被用户感知的应用,以及用户历史使用量大于预定值的应用。
(3)第三应用级别,包括该系统中除该第一应用级别和该第二应用级别之外的其他应用。
该级别中的应用优先级最低,例如可以包括用户不经常使用的应用、系统不重要的应用和恶意应用。
应理解,以上级别的划分仅是本申请实施例的一种可选实施方式,不应对本申请实施例的范围构成任何限定。
可选地,在本申请实施例中,可以根据该第一应用的信息、系统中当前可使用的资源量以及该第一应用触发启动该第二应用的方式中的至少一种,确定限制该第二应用启动的方式,按照该方式,限制该第二应用的启动。
可选地,限制启动可以包括禁止启动或延迟启动。
可选地,针对延迟启动,可以设置时间定时器,在定时器到时,可以启动被延迟启动的应用。
可选地,在本申请实施例中,可以根据应用的信息、系统可使用的资源量、以及应用启动触发方式中的至少一种与限制启动的方式的对应关系,以及该第一应用的信息、系统中当前可使用的资源量以及该第一应用触发启动该第二应用的方式中的至少一种,确定限制该第二应用启动的方式。可选地,该对应关系为预配置的。
具体地,该应用的信息包括该应用的级别信息,其中,该系统包括多个级别的应用,该应用的级别信息用于指示该应用所属的应用级别;和/或,
该系统可使用的资源包括中央处理单元CPU资源、输入输出IO资源和内存资源中的至少一种;和/或,
该应用被触发启动的方式包括被广播触发启动或被专门针对的方式触发启动。
例如,在该第一应用触发启动该第二应用的方式为广播的方式,且在该系统当前可使用的资源量小于等于第一阈值时,确定需要禁止该第二应用的启动;或者,在该第一应用触发启动该第二应用的方式为针对该第二应用的方式,且在该系统当前可使用的资源量小于等于第一阈值时,确定需要延迟该第二应用的启动。
再例如,在该第一应用触发启动该第二应用的方式为广播的方式,且第二应用排序的优先级低于或等于某一级别时,则确定需要延迟该第二应用的启动;在该第一应用触发启动该第二应用的方式为专门针对该第二应用的方式时,且第二应用排序的优先级低于或等于某一级别时,则确定需要禁止该第二应用的启动。
再例如,在该系统当前可使用的资源量小于等于第一阈值,该第一应用的级别小于等于第一级别时,则确定需要禁止该第二应用的启动;或者,在在该系统当前可使用的资源量小于等于第一阈值,该第一应用的级别小于等于第二级别且大于第一级别时,则确定需要延迟该第二应用的启动。
再例如,不同应用级别对应不同的资源量阈值,每个该应用级别对应至少两个资源量阈值,该至少两个资源量阈值中,不同的资源量阈值对应不同的启动限制方式;管控设备可以根据该第一应用的级别信息,确定该第一应用所属的应用级别;确定该第一应用所属的应用级别对应的资源量阈值;在该系统当前可使用的资源量小于等于该第一应用所属的应用级别对应的资源量阈值时,确定限制该第二应用的启动;以及确定该第一应用所属的应用级别对应的至少两个资源量阈值中,大于等于该系统当前可使用的资源量的资源量阈值中最大的资源量阈值;确定该最大的资源量阈值对应的启动限制方式;将该最大的资源量阈值对应的启动限制方式,确定为限制该第二应用启动的方式。可选地,该启动限制方式包括延迟启动和禁止启动;其中,对于相同的应用级别,该禁止启动对应的资源量阈值小于该延迟启动的对应的资源量阈值。
在330中,在确定需要限制该第二应用的启动时,限制该第二应用的启动。
例如,在确定限制该第二应用启动的方式为禁止启动时,则禁止启动该第二应用。
再例如,在确定限制该第二应用启动的方式为延迟启动时,则延迟启动该第二应用,具体地,可以启动定时器,在定时器到时时,则启动该第二应用。
因此,在本申请实施例中,在第一应用触发启动第二应用之后,根据该第一应用的信息和系统中当前可使用的资源中的至少一种,确定是否需要限制该第二应用的启动,在确定需要限制该第二应用的启动时,限制该第二应用的启动,降低应用被其他应用频繁触发启动所导致的资源浪费,并从而可以提升系统性能。
图6示出了根据本申请实施例的一种应用管控方法400的示意性流程图。其中,在该方法400中,管控可以包括限制资源和增加资源。如图6所示,该应用管控方法400包括以下内容。
在410中,确定与多个应用中每个应用关联的应用。
在420中,将所述多个应用以及与所述每个应用关联的应用进行分组,以得到多个应用分组,其中,每个应用分组包括的应用为相关联的应用。
可选地,在本申请实施例中,一个应用属于一个应用分组。
在430中,对所述多个应用分组进行排序。
可选地,可以按照所述每个应用分组所占用的资源量,对所述多个应用分组进行排序。
当然还可以利用其他信息对多个应用分组进行排序,例如,每个应用分组中应用的属性信息或用户使用信息等。
可选地,在本申请实施例中,可以按照所述每个应用分组所占用的资源量,周期性对所述多个应用分组进行排序。
在440中,从所述多个应用分组中确定至少一个应用分组。
可选地,在所述管控为增加资源时,在系统当前可使用的资源量大于等于第一阈值时,从所述多个应用分组中确定所述至少一个应用分组;在所述管控为限制资源时,在系统当前可使用的资源量小于等于第二阈值时,从所述多个应用分组中确定所述至少一个应用分组。
可选地,此处提到的阈值可以是针对多种资源分别设置阈值,例如,针对CPU资源设置的资源阈值为50%,针对内存设置的资源阈值为60%,针对IO资源设置的阈值为70%;只有同时满足CPU可用的资源量大于等于50%,内存可用的资源量大于等于60%,以及IO资源可用的资源量大于等于70%时,确定需要增加至少一个应用分组的资源;或者,在CPU可用的资源量大于等于50%,内存可用的资源量大于等于60%,以及IO资源可用的资源量大于等于70%任一项得到满足时,确定需要增加至少一个应用分组的资源。
可选地,本申请实施例中,还可以针对多种资源设置单个阈值,例如,设置的阈值为55%,针对不同的资源可以设置不同的权重,例如,CPU的权重为0.5,内存设置的权重为0.4,IO设置的权重为0.3,假设系统CPU当前可用的资源量为50%、内存可用的资源量为60%,IO资源可用的资源量为70%,则可以计算系统当前可用的资源量的加权值,即0.5×50%+0.4×50%+0.3×70%=66%,由于66%大于55%,则确定至少一个应用分组,并对增加该至少一个应用分组的资源。
可选地,本申请实施例可以仅针对一种资源设置阈值,例如,仅针对CPU设置阈值,例如,CPU设置的阈值为50%,只要在系统当前可使用的CPU资源量大于等于50%时,则确定至少一个应用分组,并增加该至少一个应用分组的资源,而不管内存资源或IO资源的可使用量。
可选地,本申请实施例也可以在其他情况下,例如,CPU温度较高的情况下,确定至少一个应用分组,并限制该至少一个应用分组的资源。
可选地,在本申请实施例中,选择的用于管控的分组的数量可以依据系统当前可使用的资源与资源量阈值来确定,选择的分组的所使用的数据量大于等于系统资源量阈值与当前可使用的资源量之差。
在450中,对所述至少一个应用分组中的应用进行管控,所述管控包括增加资源或限制资源。
可选地,在本申请实施例中,在对应用分组进行优先级排序之后,可以根据该优先级排序调整分组。
具体地,第一应用被至少两个应用关联,所述至少两个应用互不关联,按照所述至少两个应用所属的应用分组的排序,调整所述第一应用所属的分组。
在一种实现方式中,所述管控包括限制资源,所述第一应用当前与至少两个应用中的第二应用划分为属于第一应用分组,在所述至少两个应用存在第三应用所属的第二应用分组的优先级排序高于所述第一应用分组时,将所述第一应用调整为属于所述第二应用分组,其中优先级排序低的分组为易被限制资源的分组。
例如,管控包括限制资源,应用A与应用B关联,且与应用C关联,如果将应用A与应用B划分一个分组,应用C划分为另一分组,如果C所处的分组的优先级高于应用A与应用B所处的分组,则可以将应用A调整为与应用C划分为一组。
在另一种实现方式中,所述管控包括增加资源,所述第一应用当前与至少两个应用中的第二应用划分为属于第一应用分组,在所述至少两个应用存在第三应用所属的第二应用分组的优先级排序高于所述第一应用分组时,将所述第一应用调整为属于所述第二应用分组,其中优先级排序高的分组为易被增加资源的分组。
例如,管控包括增加资源,应用D与应用E关联,且与应用F关联,如果将应用D与应用E划分一个分组,应用F划分为另一分组,如果F所处的分组的优先级高于应用D与应用E所处的分组,则可以将应用D调整为与应用F划分为一组。
因此,在本申请实施例中,将应用按照关联性进行应用分组的划分,每个分组中的应用为相关联的应用,并在需要管控时,以应用分组为单位进行管控,可以避免在管控某一应用,而未管控其相关联的应用导致的资源浪费的问题。
图7是根据本申请实施例的应用管控方法500的示意性流程图。如图6所示,该方法包括510和520。
在510中,根据多个应用中每个应用占用的多种资源中每种资源的占用量以及权重,确定每个应用的资源加权和;
在520中,根据所述多个应用中所述每个应用的资源加权和,确定第一应用。
可选地,该第一应用可以包括多个应用。
可选地,本申请实施例中,可以针对多种资源设置单个阈值,例如,设置的阈值为55%,针对不同的资源可以设置不同的权重,例如,CPU的权重为0.5,内存设置的权重为0.4,IO设置的权重为0.3,假设系统CPU当前可用的资源量为50%、内存可用的资源量为60%,IO资源可用的资源量为70%,则可以计算系统当前可用的资源量的加权值,即0.5×50%+0.4×50%+0.3×70%=66%,由于66%大于55%,则确定不需要限制应用的资源。
可选地,在本申请实施例中,在确定多种资源在所述系统中可用资源的资源量小于等于设置阈值时,根据多个应用中每个应用占用的多种资源中每种资源的占用量以及权重,确定第一应用。
可选地,在本申请实施例中,可以根据系统中的应用的优先级排序,从系统中的应用中确定所述多个应用,并从而从该多个应用中确定第一应用。
具体地,可以按照多个应用集合的优先级排序,确定第一应用集合;按照所述第一应用集合中每个应用占用的多种资源中每种资源的占用量以及权重,确定第一应用。
可选地,在本申请实施例中,所述系统中的应用集合是按照所述系统中各个应用的资源使用信息、用户使用信息和属性信息中的至少一种进行划分的。
在520中,管控所述第一应用。
具体地,可以对第一应用进行资源的限制或启动。
因此,在本申请实施例中,根据多个应用中每个应用占用的多种资源中每种资源的占用量以及权重,确定需要管控的应用,应用的管控可以兼顾多种资源,从而可以避免资源浪费,提升系统性能。
为了验证本申请实施例中的各个应用管控方法的效果,发明人以android的移动终端为例进行了测试,在测试过程中发现,在应用了本申请实施例的管控方法的情况下,应用的启动时间被降低以及应用丢帧率下降。
应理解,在本申请实施例中,以上方法200、300、400和500并不是互斥的,在不存在矛盾的情况下,各个术语的解释可以相互参考,各个方法的执行方式可以结合使用。
以上实施例描述了应用的管控方法,本申请实施例还提供了一种可以实现上述任一管控方法的管控设备。该设备可以具有实现上述任一方法的单元。
为了简洁以及便于理解,以下结合图8,将以图5所示的应用启动的管控方法300对应的管控设备为例进行描述。
图8是根据本申请实施例的管控设备600的示意性框图。如图8所示,该管控设备600可以包括接收单元610、第一确定单元620和限制单元620。
接收单元610,用于接收第一应用发送的用于触发启动第二应用的信息;第一确定单元620,用于根据该第一应用的信息和系统中当前可使用的资源量中的至少一种,确定是否需要限制该第二应用的启动,其中,该第一应用的信息用于指示该第一应用在该系统中的重要程度;限制单元630,用于在该第一确定单元确定需要限制该第二应用的启动时,限制该第二应用的启动。
可选地,该第一应用的信息包括该第一应用的级别信息,其中,该系统包括多个级别的应用,该第一应用的级别信息用于指示该第一应用所属的应用级别。
可选地,该第一确定单元620具体用于:在该第一应用的级别信息用于指示该第一应用的级别高于预定级别时,确定不限制该第二应用的启动。
可选地,不同应用级别对应不同的资源量阈值;该第一确定单元620具体用于:根据该第一应用的级别信息,确定该第一应用所属的应用级别;确定该第一应用所属的应用级别对应的资源量阈值;在该系统当前可使用的资源量小于等于该第一应用所属的应用级别对应的资源量阈值时,确定限制该第二应用的启动。
可选地,每个该应用级别对应至少两个资源量阈值,该至少两个资源量阈值中,不同的资源量阈值对应不同的启动限制方式;如图8所示,该设备600还包括第二确定单元640;该第二确定单元640用于:确定该第一应用所属的应用级别对应的至少两个资源量阈值中,大于等于该系统当前可使用的资源量的资源量阈值中最大的资源量阈值;确定该最大的资源量阈值对应的启动限制方式;将该最大的资源量阈值对应的启动限制方式,确定为限制该第二应用启动的方式;
该限制单元630,用于:按照该第二确定单元确定的该方式,限制该第二应用的启动。
可选地,该启动限制方式包括延迟启动和禁止启动;其中,对于相同的应用级别,该禁止启动对应的资源量阈值小于该延迟启动的对应的资源量阈值。
可选地,该系统中应用的应用级别是按照该系统中各个应用的历史使用信息、属性信息和当前运行状态信息中的至少一种进行划分的。
可选地,该应用的历史使用信息包括该应用的使用频次、每次使用时长以及跳转关系中的至少一种;和/或,
该应用的属性信息包括用于指示该应用是否属于保证系统正常运行的基础应用的信息;和/或,
该应用的当前运行状态信息包括用于指示该应用当前正在前台运行、或后台运行且可被用户感知、或后台运行且不可被用户感知的信息。
可选地,该系统中的应用包括以下三种应用级别:
第一应用级别,包括用于保证该系统正常运行的基础应用,以及正在前台运行的应用;
第二应用级别,包括正在后台运行且可被用户感知的应用,以及用户历史使用量大于预定值的应用;
第三应用级别,包括该系统中除该第一应用级别和该第二应用级别之外的其他应用。
可选地,如图8所示,该设备还包括第二确定单元640,该第二确定单元640用于:确定限制该第二应用启动的方式;
该第一确定单元620具体用于:按照该第二确定单元640确定的该方式,限制该第二应用的启动。
可选地,该第二确定单元640具体用于:根据该第一应用的信息、该系统中当前可使用的资源量以及该第一应用触发启动该第二应用的方式中的至少一种,确定限制该第二应用启动的方式。
可选地,该第二确定单元640具体用于:根据应用的信息、该系统可使用的资源量以及应用被触发启动的方式中的至少一种与限制启动的方式的对应关系,以及该第一应用的信息、该系统中当前可使用的资源量以及该第一应用触发启动该第二应用的方式中的至少一种,确定限制该第二应用启动的方式。
可选地,该应用的信息包括该应用的级别信息,其中,该系统包括多个级别的应用,该应用的级别信息用于指示该应用所属的应用级别;和/或,
该系统可使用的资源包括中央处理单元CPU资源、输入输出IO资源和内存资源中的至少一种;和/或,
该应用被触发启动的方式包括被广播触发启动或被专门针对的方式触发启动。
可选地,该限制该第二应用启动的方式包括禁止启动该第二应用,或延迟启动该第二应用。
应理解,该管控设备600可以实现图5所示的用于应用启动的管控方法300,为了简洁,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (28)

1.一种应用启动的管控方法,其特征在于,包括:
接收第一应用发送的用于触发启动第二应用的信息;
根据所述第一应用的信息,或所述第一应用的信息和系统中当前可使用的资源量,确定是否需要限制所述第二应用的启动,其中,所述第一应用的信息用于指示所述第一应用在所述系统中的重要程度;
在确定需要限制所述第二应用的启动时,限制所述第二应用的启动。
2.根据权利要求1所述的方法,其特征在于,所述第一应用的信息包括所述第一应用的级别信息,其中,所述系统包括多个级别的应用,所述第一应用的级别信息用于指示所述第一应用所属的应用级别。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一应用的信息确定是否需要限制所述第二应用的启动,包括:
在所述第一应用的级别信息用于指示所述第一应用的级别高于预定级别时,确定不限制所述第二应用的启动;或者,
在所述第一应用的级别信息用于指示所述第一应用的级别低于或等于所述预定级别时,确定限制所述第二应用的启动。
4.根据权利要求2所述的方法,其特征在于,不同应用级别对应不同的资源量阈值;
所述根据所述第一应用的信息以及系统中当前可使用的资源量,确定是否需要限制所述第二应用的启动,包括:
根据所述第一应用的级别信息,确定所述第一应用所属的应用级别;
确定所述第一应用所属的应用级别对应的资源量阈值;
在所述系统当前可使用的资源量小于等于所述第一应用所属的应用级别对应的资源量阈值时,确定限制所述第二应用的启动。
5.根据权利要求4所述的方法,其特征在于,每个所述应用级别对应至少两个资源量阈值,所述至少两个资源量阈值中,不同的资源量阈值对应不同的启动限制方式;所述方法还包括:
确定所述第一应用所属的应用级别对应的至少两个资源量阈值中,大于等于所述系统当前可使用的资源量的资源量阈值中最大的资源量阈值;
确定所述最大的资源量阈值对应的启动限制方式;
将所述最大的资源量阈值对应的启动限制方式,确定为限制所述第二应用启动的方式;
所述限制所述第二应用的启动,包括:
按照确定的所述方式,限制所述第二应用的启动。
6.根据权利要求5所述的方法,其特征在于,所述启动限制方式包括延迟启动和禁止启动;其中,对于相同的应用级别,所述禁止启动对应的资源量阈值小于所述延迟启动的对应的资源量阈值。
7.根据权利要求2至6中任一项所述的方法,其特征在于,所述系统中应用的应用级别是按照所述系统中各个应用的历史使用信息、属性信息和当前运行状态信息中的至少一种进行划分的。
8.根据权利要求7所述的方法,其特征在于,所述应用的历史使用信息包括所述应用的使用频次、每次使用时长以及跳转关系中的至少一种;和/或,
所述应用的属性信息包括用于指示所述应用是否属于保证系统正常运行的基础应用的信息;和/或,
所述应用的当前运行状态信息包括用于指示所述应用当前正在前台运行、或后台运行且可被用户感知、或后台运行且不可被用户感知的信息。
9.根据权利要求8所述的方法,其特征在于,所述系统中的应用包括以下三种应用级别:
第一应用级别,包括用于保证所述系统正常运行的基础应用,以及正在前台运行的应用;
第二应用级别,包括正在后台运行且可被用户感知的应用,以及用户历史使用量大于预定值的应用;
第三应用级别,包括所述系统中除所述第一应用级别和所述第二应用级别之外的其他应用。
10.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
确定限制所述第二应用启动的方式;
所述限制所述第二应用的启动,包括:
按照确定的所述方式,限制所述第二应用的启动。
11.根据权利要求10所述的方法,其特征在于,所述确定限制所述第二应用启动的方式,包括:
根据所述第一应用的信息、所述系统中当前可使用的资源量以及所述第一应用触发启动所述第二应用的方式中的至少一种,确定限制所述第二应用启动的方式。
12.根据权利要求11所述的方法,其特征在于,所述确定限制所述第二应用启动的方式,包括:
根据应用的信息、所述系统可使用的资源量以及应用被触发启动的方式中的至少一种与限制启动的方式的对应关系,以及所述第一应用的信息、所述系统中当前可使用的资源量以及所述第一应用触发启动所述第二应用的方式中的至少一种,确定限制所述第二应用启动的方式。
13.根据权利要求12所述的方法,其特征在于,所述应用的信息包括所述应用的级别信息,其中,所述系统包括多个级别的应用,所述应用的级别信息用于指示所述应用所属的应用级别;和/或,
所述系统可使用的资源包括中央处理单元CPU资源、输入输出IO资源和内存资源中的至少一种;和/或,
所述应用被触发启动的方式包括被广播触发启动或被专门针对的方式触发启动。
14.根据权利要求10所述的方法,其特征在于,所述限制所述第二应用启动的方式包括禁止启动所述第二应用,或延迟启动所述第二应用。
15.一种管控设备,其特征在于,包括:
接收单元,用于接收第一应用发送的用于触发启动第二应用的信息;
第一确定单元,用于根据所述第一应用的信息,或所述第一应用的信息和系统中当前可使用的资源量,确定是否需要限制所述第二应用的启动,其中,所述第一应用的信息用于指示所述第一应用在所述系统中的重要程度;
限制单元,用于在所述第一确定单元确定需要限制所述第二应用的启动时,限制所述第二应用的启动。
16.根据权利要求15所述的设备,其特征在于,所述第一应用的信息包括所述第一应用的级别信息,其中,所述系统包括多个级别的应用,所述第一应用的级别信息用于指示所述第一应用所属的应用级别。
17.根据权利要求16所述的设备,其特征在于,所述第一确定单元具体用于:
在所述第一应用的级别信息用于指示所述第一应用的级别高于预定级别时,确定不限制所述第二应用的启动;或者,
在所述第一应用的级别信息用于指示所述第一应用的级别低于或等于所述预定级别时,确定限制所述第二应用的启动。
18.根据权利要求15所述的设备,其特征在于,不同应用级别对应不同的资源量阈值;
所述第一确定单元具体用于:
根据所述第一应用的级别信息,确定所述第一应用所属的应用级别;
确定所述第一应用所属的应用级别对应的资源量阈值;
在所述系统当前可使用的资源量小于等于所述第一应用所属的应用级别对应的资源量阈值时,确定限制所述第二应用的启动。
19.根据权利要求18所述的设备,其特征在于,每个所述应用级别对应至少两个资源量阈值,所述至少两个资源量阈值中,不同的资源量阈值对应不同的启动限制方式;所述设备还包括第二确定单元:
所述第二确定单元用于:
确定所述第一应用所属的应用级别对应的至少两个资源量阈值中,大于等于所述系统当前可使用的资源量的资源量阈值中最大的资源量阈值;
确定所述最大的资源量阈值对应的启动限制方式;
将所述最大的资源量阈值对应的启动限制方式,确定为限制所述第二应用启动的方式;
所述限制单元,用于:
按照所述第二确定单元确定的所述方式,限制所述第二应用的启动。
20.根据权利要求19所述的设备,其特征在于,所述启动限制方式包括延迟启动和禁止启动;其中,对于相同的应用级别,所述禁止启动对应的资源量阈值小于所述延迟启动的对应的资源量阈值。
21.根据权利要求16至20中任一项所述的设备,其特征在于,所述系统中应用的应用级别是按照所述系统中各个应用的历史使用信息、属性信息和当前运行状态信息中的至少一种进行划分的。
22.根据权利要求21所述的设备,其特征在于,所述应用的历史使用信息包括所述应用的使用频次、每次使用时长以及跳转关系中的至少一种;和/或,
所述应用的属性信息包括用于指示所述应用是否属于保证系统正常运行的基础应用的信息;和/或,
所述应用的当前运行状态信息包括用于指示所述应用当前正在前台运行、或后台运行且可被用户感知、或后台运行且不可被用户感知的信息。
23.根据权利要求22所述的设备,其特征在于,所述系统中的应用包括以下三种应用级别:
第一应用级别,包括用于保证所述系统正常运行的基础应用,以及正在前台运行的应用;
第二应用级别,包括正在后台运行且可被用户感知的应用,以及用户历史使用量大于预定值的应用;
第三应用级别,包括所述系统中除所述第一应用级别和所述第二应用级别之外的其他应用。
24.根据权利要求15至18中任一项所述的设备,其特征在于,所述设备还包括第二确定单元,所述第二确定单元用于:
确定限制所述第二应用启动的方式;
所述第一确定单元具体用于:
按照所述第二确定单元确定的所述方式,限制所述第二应用的启动。
25.根据权利要求24所述的设备,其特征在于,所述第二确定单元具体用于:
根据所述第一应用的信息、所述系统中当前可使用的资源量以及所述第一应用触发启动所述第二应用的方式中的至少一种,确定限制所述第二应用启动的方式。
26.根据权利要求25所述的设备,其特征在于,所述第二确定单元具体用于:
根据应用的信息、所述系统可使用的资源量以及应用被触发启动的方式中的至少一种与限制启动的方式的对应关系,以及所述第一应用的信息、所述系统中当前可使用的资源量以及所述第一应用触发启动所述第二应用的方式中的至少一种,确定限制所述第二应用启动的方式。
27.根据权利要求26所述的设备,其特征在于,所述应用的信息包括所述应用的级别信息,其中,所述系统包括多个级别的应用,所述应用的级别信息用于指示所述应用所属的应用级别;和/或,
所述系统可使用的资源包括中央处理单元CPU资源、输入输出IO资源和内存资源中的至少一种;和/或,
所述应用被触发启动的方式包括被广播触发启动或被专门针对的方式触发启动。
28.根据权利要求24所述的设备,其特征在于,所述限制所述第二应用启动的方式包括禁止启动所述第二应用,或延迟启动所述第二应用。
CN201610915687.0A 2016-10-20 2016-10-20 应用启动的管控方法和管控设备 Active CN107220077B (zh)

Priority Applications (13)

Application Number Priority Date Filing Date Title
CN201610915687.0A CN107220077B (zh) 2016-10-20 2016-10-20 应用启动的管控方法和管控设备
KR1020197012743A KR102247384B1 (ko) 2016-10-20 2017-10-19 애플리케이션 기동 제어 방법 및 제어 장치
CN202110471079.6A CN113220360B (zh) 2016-10-20 2017-10-19 应用启动的管控方法和管控设备
CA3041372A CA3041372C (en) 2016-10-20 2017-10-19 Application startup control method and control device
KR1020217012634A KR20210049204A (ko) 2016-10-20 2017-10-19 애플리케이션 기동 제어 방법 및 제어 장치
BR112019007914A BR112019007914A2 (pt) 2016-10-20 2017-10-19 método de controle de iniciação de aplicativo e dispositivo de computador, mídia de armazenamento não-transitória, método de controle de aplicativo, dispositivo de computador e mídia de armazenamento não-transitória
EP17862584.4A EP3528113B1 (en) 2016-10-20 2017-10-19 Control method and control apparatus for starting of application
CN201780061841.5A CN109844716B (zh) 2016-10-20 2017-10-19 应用启动的管控方法和管控设备
AU2017347578A AU2017347578B2 (en) 2016-10-20 2017-10-19 Control method and control apparatus for starting of application
PCT/CN2017/106839 WO2018072726A1 (zh) 2016-10-20 2017-10-19 应用启动的管控方法和管控设备
US16/387,643 US11474831B2 (en) 2016-10-20 2019-04-18 Application startup control method and control device
AU2021202560A AU2021202560B2 (en) 2016-10-20 2021-04-26 Application startup control method and control device
US17/958,748 US20230025268A1 (en) 2016-10-20 2022-10-03 Application startup control method and control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610915687.0A CN107220077B (zh) 2016-10-20 2016-10-20 应用启动的管控方法和管控设备

Publications (2)

Publication Number Publication Date
CN107220077A CN107220077A (zh) 2017-09-29
CN107220077B true CN107220077B (zh) 2019-03-19

Family

ID=59928085

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201610915687.0A Active CN107220077B (zh) 2016-10-20 2016-10-20 应用启动的管控方法和管控设备
CN202110471079.6A Active CN113220360B (zh) 2016-10-20 2017-10-19 应用启动的管控方法和管控设备
CN201780061841.5A Active CN109844716B (zh) 2016-10-20 2017-10-19 应用启动的管控方法和管控设备

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN202110471079.6A Active CN113220360B (zh) 2016-10-20 2017-10-19 应用启动的管控方法和管控设备
CN201780061841.5A Active CN109844716B (zh) 2016-10-20 2017-10-19 应用启动的管控方法和管控设备

Country Status (8)

Country Link
US (2) US11474831B2 (zh)
EP (1) EP3528113B1 (zh)
KR (2) KR102247384B1 (zh)
CN (3) CN107220077B (zh)
AU (2) AU2017347578B2 (zh)
BR (1) BR112019007914A2 (zh)
CA (1) CA3041372C (zh)
WO (1) WO2018072726A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107220077B (zh) 2016-10-20 2019-03-19 华为技术有限公司 应用启动的管控方法和管控设备
CN110032398B (zh) * 2018-01-12 2022-04-12 Oppo广东移动通信有限公司 应用处理方法和装置、电子设备、计算机可读存储介质
CN108536508B (zh) * 2018-03-22 2021-07-13 Oppo广东移动通信有限公司 界面处理方法、装置以及移动终端
CN108363517A (zh) * 2018-04-20 2018-08-03 深圳市沃特沃德股份有限公司 触屏校准的触发方法及装置
CN111158830B (zh) * 2019-12-31 2024-02-27 维沃移动通信有限公司 一种显示应用任务窗口的方法和终端设备
CN111782298B (zh) * 2020-06-30 2024-03-19 Oppo(重庆)智能科技有限公司 应用程序的管理方法、装置、存储介质及电子设备
CN114816763B (zh) * 2022-05-27 2024-04-05 京闽数科(北京)有限公司 一种采用大数据技术的计算机资源分配系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105045637A (zh) * 2015-08-14 2015-11-11 深圳市金立通信设备有限公司 一种应用启动的方法及终端
WO2016026108A1 (zh) * 2014-08-20 2016-02-25 华为技术有限公司 一种应用程序的切换方法、装置及电子终端
WO2016105362A1 (en) * 2014-12-23 2016-06-30 Hewlett Packard Enterprise Development Lp Resource predictors indicative of predicted resource usage

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1031592A (ja) * 1996-07-16 1998-02-03 Nec Corp メモリ管理方法及びメモリ管理システム
US7500091B2 (en) * 2005-11-30 2009-03-03 Microsoft Corporation Delay start-up of applications
CN100542139C (zh) * 2006-12-31 2009-09-16 华为技术有限公司 一种基于任务分组的资源分配方法和装置
JP4286876B2 (ja) 2007-03-01 2009-07-01 富士通テン株式会社 画像表示制御装置
JP2009134379A (ja) * 2007-11-29 2009-06-18 Hitachi Ltd メモリ管理方法
US8176314B2 (en) * 2008-02-22 2012-05-08 International Business Machines Corporation System startup with applications using configurable options
US8069247B2 (en) * 2008-12-03 2011-11-29 Verizon Data Services Llc Application launcher systems, methods, and apparatuses
US9112928B2 (en) * 2009-05-29 2015-08-18 Nokia Technologies Oy Method and apparatus for automatic loading of applications
US20120102200A1 (en) 2010-10-26 2012-04-26 Qualcomm Incorporated Application specific resource management
US9354852B2 (en) 2010-12-23 2016-05-31 Microsoft Technology Licensing, Llc Satisfying application dependencies
US20120324481A1 (en) * 2011-06-16 2012-12-20 Samsung Electronics Co. Ltd. Adaptive termination and pre-launching policy for improving application startup time
US8869235B2 (en) 2011-10-11 2014-10-21 Citrix Systems, Inc. Secure mobile browser for protecting enterprise data
JP5357989B2 (ja) * 2012-02-27 2013-12-04 日本電信電話株式会社 メモリ管理装置、メモリ管理方法およびメモリ管理プログラム
CN103425503A (zh) 2012-05-18 2013-12-04 宇龙计算机通信科技(深圳)有限公司 基于Android的应用管理方法、系统及通信终端
US9170859B2 (en) * 2012-06-07 2015-10-27 Apple Inc. Targeted memory pressure event notifications
US9060152B2 (en) 2012-08-17 2015-06-16 Flextronics Ap, Llc Remote control having hotkeys with dynamically assigned functions
CN102831045B (zh) * 2012-06-21 2015-04-08 北京奇虎科技有限公司 一种终端设备中启动项检测的方法和装置
US8818329B2 (en) 2012-06-29 2014-08-26 Time Warner Cable Enterprises Llc System and method for capturing network usage data
US20140173746A1 (en) * 2012-12-13 2014-06-19 Apple Inc. Application repository
US9170863B2 (en) * 2013-02-01 2015-10-27 Apple Inc. Dynamic location search suggestions based on travel itineraries
CN103164229A (zh) 2013-04-08 2013-06-19 北京奇虎科技有限公司 一种清理移动终端进程的方法及装置
US9508040B2 (en) * 2013-06-12 2016-11-29 Microsoft Technology Licensing, Llc Predictive pre-launch for applications
JP6261264B2 (ja) 2013-10-01 2018-01-17 クラリオン株式会社 情報処理連携システム、情報処理端末及びプログラム
CN103631661B (zh) * 2013-11-27 2017-04-05 青岛海信电器股份有限公司 一种内存管理方法和装置
US9678797B2 (en) * 2014-03-10 2017-06-13 Microsoft Technology Licensing, Llc Dynamic resource management for multi-process applications
US9871741B2 (en) 2014-03-10 2018-01-16 Microsoft Technology Licensing, Llc Resource management based on device-specific or user-specific resource usage profiles
CN103870315B (zh) * 2014-03-26 2017-05-31 中国联合网络通信集团有限公司 一种jvm能耗控制方法及装置
US9959187B2 (en) * 2014-04-25 2018-05-01 Lenovo (Singapore) Pte. Ltd. Decoalescing resource utilization at boot
CN105282302A (zh) 2014-07-15 2016-01-27 中兴通讯股份有限公司 一种移动终端应用运行方法及装置
CN104407924B (zh) * 2014-10-31 2017-11-21 小米科技有限责任公司 内存优化方法及装置
CN104318154B (zh) * 2014-11-14 2016-10-19 努比亚技术有限公司 应用的安全防护方法及装置
CN104598315A (zh) * 2014-12-12 2015-05-06 广州三星通信技术研究有限公司 管理内存的方法、装置及终端
CN104461576B (zh) * 2014-12-29 2018-06-01 联想(北京)有限公司 一种信息处理方法和电子设备
CN104461725B (zh) * 2014-12-30 2018-05-08 小米科技有限责任公司 控制应用进程启动的方法及装置
CN104573497B (zh) 2014-12-31 2018-06-01 北京奇虎科技有限公司 一种启动项的处理方法和装置
CN104573496B (zh) 2014-12-31 2018-06-01 北京奇虎科技有限公司 一种禁止启动项启动的方法和装置
CN104573495B (zh) * 2014-12-31 2018-10-09 北京奇虎科技有限公司 一种启动项的处理方法和装置
KR102395868B1 (ko) 2015-02-27 2022-05-10 삼성전자주식회사 전자 장치 및 전자 장치의 어플리케이션 제어 방법
US9465604B1 (en) * 2015-06-23 2016-10-11 Amazon Technologies, Inc. Additional content with variable fidelity
CN104991803B (zh) 2015-07-10 2018-04-06 上海斐讯数据通信技术有限公司 对android应用程序在特定条件下自启动的管控系统及方法
CN105389203B (zh) * 2015-10-19 2017-11-17 广东欧珀移动通信有限公司 一种指纹识别设备的调用方法、装置及移动终端
CN105630411B (zh) * 2015-12-18 2019-09-27 小米科技有限责任公司 内存管理方法及装置
CN105700942B (zh) 2015-12-30 2019-08-06 Oppo广东移动通信有限公司 应用进程关联启动方法及关联启动装置
CN105740008B (zh) 2016-01-25 2020-02-07 努比亚技术有限公司 禁止应用程序链式启动的装置和方法
CN105740078B (zh) * 2016-01-29 2020-09-08 华为技术有限公司 一种内存管理方法、装置及终端
CN105824664B (zh) 2016-03-08 2019-03-12 Oppo广东移动通信有限公司 应用程序启动监控方法、装置以及终端设备
CN105893153A (zh) * 2016-03-31 2016-08-24 北京百纳威尔无线通信设备有限公司 移动终端的内存清理方法和装置
CN105912094A (zh) * 2016-04-18 2016-08-31 深圳市万普拉斯科技有限公司 切断唤醒方法及装置
CN105867947B (zh) * 2016-04-25 2019-03-26 青岛海信电器股份有限公司 预置应用程序升级后的数据处理方法及装置
CN106055970A (zh) 2016-05-19 2016-10-26 努比亚技术有限公司 应用软件关联启动装置和方法
CN106227585B (zh) 2016-05-31 2020-02-14 北京金山安全软件有限公司 一种应用程序启动方法、装置及设备
CN106201574B (zh) 2016-06-22 2020-02-14 Oppo广东移动通信有限公司 一种应用界面的启动方法及装置
CN107220077B (zh) * 2016-10-20 2019-03-19 华为技术有限公司 应用启动的管控方法和管控设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016026108A1 (zh) * 2014-08-20 2016-02-25 华为技术有限公司 一种应用程序的切换方法、装置及电子终端
WO2016105362A1 (en) * 2014-12-23 2016-06-30 Hewlett Packard Enterprise Development Lp Resource predictors indicative of predicted resource usage
CN105045637A (zh) * 2015-08-14 2015-11-11 深圳市金立通信设备有限公司 一种应用启动的方法及终端

Also Published As

Publication number Publication date
CN113220360A (zh) 2021-08-06
US20190243666A1 (en) 2019-08-08
CA3041372A1 (en) 2018-04-26
EP3528113A4 (en) 2019-11-20
KR102247384B1 (ko) 2021-04-30
CN107220077A (zh) 2017-09-29
US11474831B2 (en) 2022-10-18
AU2017347578A1 (en) 2019-05-23
KR20210049204A (ko) 2021-05-04
EP3528113B1 (en) 2024-03-20
AU2021202560B2 (en) 2023-02-02
CN109844716A (zh) 2019-06-04
AU2021202560A1 (en) 2021-05-27
KR20190058610A (ko) 2019-05-29
BR112019007914A2 (pt) 2019-07-02
AU2017347578B2 (en) 2021-01-28
EP3528113A1 (en) 2019-08-21
CA3041372C (en) 2023-07-18
US20230025268A1 (en) 2023-01-26
WO2018072726A1 (zh) 2018-04-26
CN113220360B (zh) 2023-09-12
CN109844716B (zh) 2021-05-07

Similar Documents

Publication Publication Date Title
CN107220077B (zh) 应用启动的管控方法和管控设备
CN106453053B (zh) 群组消息显示方法及装置
CN103942113B (zh) 系统重启原因的检测方法、装置及终端设备
RU2632153C2 (ru) Способ, устройство и терминал для отображения виртуальной клавиатуры
CN107092520B (zh) 应用程序的推荐方法、装置、存储介质及移动终端
CN109062467A (zh) 分屏应用切换方法、装置、存储介质和电子设备
CN107077295A (zh) 一种快速分屏的方法、装置、电子设备、显示界面以及存储介质
CN104298427A (zh) 结果界面显示方法和装置
CN108984064A (zh) 分屏显示方法、装置、存储介质和电子设备
CN104965641B (zh) 信息显示方法和装置
CN110502163A (zh) 终端设备的控制方法及终端设备
CN104021129B (zh) 显示组图的方法及终端
CN108984095A (zh) 手势交互方法、装置、存储介质和电子设备
CN104077184B (zh) 一种应用程序的进程控制方法及计算机系统
CN109067981A (zh) 分屏应用切换方法、装置、存储介质和电子设备
CN107783833A (zh) 一种终端后台应用程序的管理方法及装置
CN108932094A (zh) 分屏应用切换方法、装置、存储介质和电子设备
CN108958606A (zh) 分屏显示方法、装置、存储介质和电子设备
CN105739839B (zh) 多媒体菜单项的选择方法及装置
CN106406494B (zh) 一种处理器调度的方法及终端
CN106210919A (zh) 一种播放主播歌唱视频的方法、装置和系统
CN107219983A (zh) 列表显示方法及装置
CN105487770B (zh) 图片发送方法及装置
CN105047185B (zh) 一种获取伴奏音频的方法、装置和系统
CN108984142A (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