CN110687998A - 一种应用管理方法及装置 - Google Patents
一种应用管理方法及装置 Download PDFInfo
- Publication number
- CN110687998A CN110687998A CN201910882291.4A CN201910882291A CN110687998A CN 110687998 A CN110687998 A CN 110687998A CN 201910882291 A CN201910882291 A CN 201910882291A CN 110687998 A CN110687998 A CN 110687998A
- Authority
- CN
- China
- Prior art keywords
- app
- granularity
- data packet
- wake
- terminal equipment
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请实施例公开一种应用管理方法及装置。在该方法中,当终端设备确定待管理的App满足第一条件时,则控制所述App进入休眠状态;在获取数据包之后,根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件;当确定所述数据包符合所述唤醒粒度对应的唤醒条件时,所述终端设备唤醒所述App。通过本申请,终端设备会在App满足第一条件时,控制App进入休眠状态,并在获取到的数据包满足当前的唤醒粒度对应的唤醒条件时,终端设备唤醒App,以避免App错失数据包,并且,由于该方案能够在App满足第一条件时,控制App进入休眠状态,因此能够避免App一直处于工作状态,从而能够减少App的功耗,并且还能够延长终端的使用时长。
Description
技术领域
本申请涉及终端设备技术领域,具体涉及一种应用管理方法及装置。
背景技术
为了满足用户的应用需求,多种类型的应用程序(application,App)应运而生,并被安装在终端设备中。例如,可在终端设备中安装游戏类、购物类和通信类等App,以供用户应用。
但是,App在运行过程中,往往会产生功耗,从而影响到终端设备的使用时长。特别的,当终端设备内安装的App较多时,App在运行过程中的功耗对终端设备的影响更大。为了减少App的功耗,现有技术通常在App退后台之后,停止App的运行,以减少该App的功耗。
但是,发明人在本申请的研究过程中发现,有些App需要及时接收服务器发送的信息,例如,某些需要经营类的App,需要及时获取服务器传输的订单信息。为了保障这部分App能够及时接收到信息,现有技术通常使这部分App一直处于应用保活的状态,即使这部分App退后台,也不会停止该App的运行,从而导致这部分App仍然存在功耗较多的问题。
发明内容
目前部分App即使在退后台之后,也一直处于应用保活的状态,因此存在功耗较多的问题,为了解决这一问题,本申请实施例公开一种应用管理方法及装置。
第一方面,本申请实施例提供一种应用管理方法,包括:
当安装在终端设备内的待管理的应用程序App满足第一条件时,所述终端设备控制所述App进入休眠状态;
所述终端设备获取数据包;
当所述数据包符合所述App当前的唤醒粒度对应的唤醒条件时,所述终端设备唤醒所述App。
通过上述步骤,能够在App满足第一条件时,控制App进入休眠状态,因此能够避免App一直处于工作状态,从而能够减少App的功耗。
一种可选的设计中,还包括:
当所述App在后台运行,并且所述App处于非活跃状态的时长大于预设的第一时长时,所述终端设备确定所述App满足所述第一条件。
一种可选的设计中,所述唤醒粒度为应用粒度、进程粒度或传输控制协议TCP粒度。
通过上述步骤,能够确定多种形式的唤醒粒度,从而满足不同的应用需求。
一种可选的设计中,当所述App当前的唤醒粒度为应用粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述终端设备获取所述数据包中加载的用户标识符UID;
所述终端设备根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述终端设备确定所述数据包符合所述唤醒粒度对应的唤醒条件。
通过上述步骤,能够确定数据包是否符合应用粒度对应的唤醒条件。
一种可选的设计中,当所述App当前的唤醒粒度为进程粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述终端设备获取所述数据包中加载的用户标识符UID;
所述终端设备根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述终端设备判断传输所述数据包的套接字socket是否为第一进程的socket;
当所述传输所述数据包的socket为所述第一进程的socket时,所述终端设备确定所述数据包符合所述唤醒粒度对应的唤醒条件。
通过上述步骤,能够确定数据包是否符合进程粒度对应的唤醒条件。
一种可选的设计中,当所述App当前的唤醒粒度为TCP粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述终端设备获取所述数据包中加载的用户标识符UID;
所述终端设备根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述终端设备判断传输所述数据包的套接字socket是否为第一TCP的socket;
当所述传输所述数据包的socket为所述第一TCP的socket时,所述终端设备确定所述数据包符合所述唤醒粒度对应的唤醒条件。
通过上述步骤,能够确定数据包是否符合TCP粒度对应的唤醒条件。
一种可选的设计中,在所述终端设备控制所述App进入休眠状态之后,还包括:
所述终端设备每隔预设周期唤醒所述App,以使所述App发送心跳数据包。
通过上述步骤,能够在App进入休眠状态之后,唤醒App,从而使App发送心跳数据包。
一种可选的设计中,在所述终端设备唤醒所述App之后,还包括:
所述终端设备在确定所述App满足所述第一条件时,再次控制所述App进入休眠状态。
通过上述步骤,在唤醒所述App之后,如果确定所述App满足第一条件,则及时控制所述App进入休眠状态,从而进一步减少App处于工作状态的时间,减少App的功耗。
一种可选的设计中,在所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件之前,还包括:
所述终端设备获取当前的剩余电量;
当所述剩余电量小于预设的第一阈值时,所述终端设备确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述剩余电量不小于所述第一阈值时,所述终端设备确定所述App当前的唤醒粒度为应用粒度;
或者,
所述终端设备确定当前的工作模式;
当所述工作模式为省电模式时,所述终端设备确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为非省电模式时,所述终端设备确定所述App当前的唤醒粒度为应用粒度;
或者,
所述终端设备确定当前的工作模式;
当所述工作模式为夜间模式时,所述终端设备确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为白天模式时,所述终端设备确定所述App当前的唤醒粒度为应用粒度。
一种可选的设计中,所述终端设备控制所述App进入休眠状态之前,还包括:
所述终端设备根据接收到的第一操作,显示App列表,所述App列表包括所述终端设备内安装的各个App;
所述终端设备根据接收到的针对所述App列表的第二操作,确定所述第二操作选择的App为所述待管理的App;
或者,
所述终端设备通过自身安装的各个App的历史使用记录,确定所述各个App中,在预设时间段内功耗超过预设的第二阈值的第一App;
所述终端设备根据所述第一App的工作状态,确定所述第一App中的待管理的App,其中,所述待管理的App为所述第一App中,在所述预设时间段内在后台运行,并且处于非活跃状态的App。
通过上述步骤,能够确定待管理的App。
第二方面,本申请实施例提供一种应用管理装置,应用于终端设备,包括:
处理器、存储器和收发器;
其中,所述存储器,用于存储程序指令;
所述收发器,用于收发数据;
所述处理器,用于调用并执行所述存储器中存储的程序指令,所述处理器执行所述程序指令时,使得所述装置执行以下操作:
当安装在所述终端设备内的待管理的应用程序App满足第一条件时,控制所述App进入休眠状态;
当所述终端设备获取到的数据包符合所述App当前的唤醒粒度对应的唤醒条件时,唤醒所述App。
一种可选的设计中,当所述App在后台运行,并且所述App处于非活跃状态的时长大于预设的第一时长时,所述处理器确定所述App满足所述第一条件。
一种可选的设计中,所述唤醒粒度为应用粒度、进程粒度或传输控制协议TCP粒度。
一种可选的设计中,当所述App当前的唤醒粒度为应用粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述处理器获取所述数据包中加载的用户标识符UID;
所述处理器根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述处理器确定所述数据包符合所述唤醒粒度对应的唤醒条件。
一种可选的设计中,当所述App当前的唤醒粒度为进程粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述处理器获取所述数据包中加载的用户标识符UID;
所述处理器根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述处理器判断传输所述数据包的套接字socket是否为第一进程的socket;
当所述传输所述数据包的socket为所述第一进程的socket时,所述处理器确定所述数据包符合所述唤醒粒度对应的唤醒条件。
一种可选的设计中,当所述App当前的唤醒粒度为TCP粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述处理器获取所述数据包中加载的用户标识符UID;
所述处理器根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述处理器判断传输所述数据包的套接字socket是否为第一TCP的socket;
当所述传输所述数据包的socket为所述第一TCP的socket时,所述处理器确定所述数据包符合所述唤醒粒度对应的唤醒条件。
一种可选的设计中,在所述处理器控制所述App进入休眠状态之后,所述处理器还用于每隔预设周期唤醒所述App,以使所述App发送心跳数据包。
一种可选的设计中,在所述终端设备唤醒所述App之后,所述处理器还用于在确定所述App满足所述第一条件时,再次控制所述App进入休眠状态。
一种可选的设计中,在所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件之前,所述处理器还用于:
获取当前的剩余电量;
当所述剩余电量小于预设的第一阈值时,确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述剩余电量不小于所述第一阈值时,确定所述App当前的唤醒粒度为应用粒度;
或者,
确定当前的工作模式;
当所述工作模式为省电模式时,确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为非省电模式时,确定所述App当前的唤醒粒度为应用粒度;
或者,
确定当前的工作模式;
当所述工作模式为夜间模式时,确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为白天模式时,确定所述App当前的唤醒粒度为应用粒度。
一种可选的设计中,所述处理器控制所述App进入休眠状态之前,还用于:
所述根据接收到的第一操作,显示App列表,所述App列表包括所述终端设备内安装的各个App;
所述根据接收到的针对所述App列表的第二操作,确定所述第二操作选择的App为所述待管理的App;
或者,
所述通过自身安装的各个App的历史使用记录,确定所述各个App中,在预设时间段内功耗超过预设的第二阈值的第一App;
所述根据所述第一App的工作状态,确定所述第一App中的待管理的App,其中,所述待管理的App为所述第一App中,在所述预设时间段内在后台运行,并且处于非活跃状态的App。
第三方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如第一方面所述的方法。
第四方面,本申请实施例提供一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如第一方面所述的方法。
本申请实施例公开的应用管理方法,当终端设备确定待管理的App满足第一条件时,则控制所述App进入休眠状态;在获取数据包之后,根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件;当确定所述数据包符合所述唤醒粒度对应的唤醒条件时,所述终端设备唤醒所述App。
通过本申请实施例公开的方法,终端设备会在App满足第一条件时,控制App进入休眠状态,并在获取到的数据包满足当前的唤醒粒度对应唤醒条件时,终端设备唤醒App,从而避免App错失数据包,并且,由于该方案能够在App满足第一条件时,控制App进入休眠状态,因此能够避免App一直处于工作状态,从而能够减少App的功耗。
进一步的,在本申请实施例公开的方法中,所述终端设备在唤醒App之后,可继续确定App是否满足第一条件,并在确定所述App满足第一条件时,再次控制App进入休眠状态,从而能够进一步减少App处于工作状态的时间,减少App的功耗。
另外,由于本申请实施例公开的方案能够减少终端设备内安装的App的功耗,因此还能够延长终端的使用时长。
附图说明
图1为本申请实施例公开的一种终端设备的结构示意图;
图2为本申请实施例公开的一种应用管理方法的应用场景示意图;
图3为本申请实施例公开的一种应用管理方法的工作流程示意图;
图4为本申请实施例公开的一种应用管理方法中,确定数据包是否符合唤醒粒度对应的唤醒条件的工作流程示意图;
图5为本申请实施例公开的一种应用管理方法中,另一确定数据包是否符合唤醒粒度对应的唤醒条件的工作流程示意图;
图6为本申请实施例公开的又一种应用管理方法的工作流程示意图;
图7为本申请实施例公开的一种应用管理方法的处理架构示意图;
图8为本申请实施例公开的一种应用管理方法的示例图;
图9为本申请实施例公开的又一种应用管理方法的示例图;
图10为本申请实施例公开的一种应用管理装置的结构示意图。
具体实施方式
本申请说明书和权利要求书及附图说明中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍:
终端设备中通常设置有多种类型的应用程序,为了减少App的功耗,现有技术通常在App退后台之后,停止该App的运行。但是,部分App需要及时接收服务器发送的信息,现有技术中,终端设备通常使这部分App一直处于应用保活的状态,即使这部分App退后台,也不会停止该App的运行,导致这部分App存在功耗较多的问题。
例如,用户在使用某些需要经营类的App,需要及时获取服务器传输的订单信息,这种情况下,终端设备会使这部分App一直处于保活状态,因此功耗较大。
为了解决部分App即使在退后台之后,也一直处于应用保活的状态,因此存在功耗较多的问题,,本申请通过以下各个实施例公开一种终端设备操控方法及装置。
其中,本申请各个实施例公开的应用管理方法,可应用于多种终端设备。在一些实施例中,终端设备可以是手机、平板电脑、桌面型、膝上型、笔记本电脑、超级移动个人计算机(Ultra-mobile Personal Computer,UMPC)、手持计算机、上网本、个人数字助理(Personal Digital Assistant,PDA)、可穿戴终端设备、智能手表等设备。所述多种终端设备可根据需要安装多种类型的App,并且,终端设备可通过网络访问App的服务器,与该服务器进行信息交互,以满足用户的多样化需求。
在一个示例中,终端设备的结构可以如图1所示,其中,图1为应用本申请实施例提供的终端设备操作方法的终端设备的结构示意图。如图1所示,终端设备可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。进一步的,当所述终端设备为手机时,所述终端设备还可以包括:天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及用户标识模块(subscriber identification module,SIM)卡接口195等。
可以理解的是,本实施例示意的结构并不构成对终端设备的具体限定。在另一些实施例中,终端设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。
其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是终端设备的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现终端设备的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现终端设备的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现终端设备的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为终端设备充电,也可以用于终端设备与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端设备,例如AR设备等。
可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端设备的结构限定。在本申请另一些实施例中,终端设备也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过终端设备的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
终端设备的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。终端设备中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在终端设备上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在终端设备上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,终端设备的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得终端设备可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code divisionmultiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(globalnavigation satellite system,GLONASS),北斗卫星导航系统(beidou navigationsatellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
终端设备通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oled,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,终端设备可以包括1个或N个显示屏194,N为大于1的正整数。
终端设备的显示屏194上可以显示一系列图形用户界面(graphical userinterface,GUI),这些GUI都是该终端设备的主屏幕。一般来说,终端设备的显示屏194的尺寸是固定的,只能在该终端设备的显示屏194中显示有限的控件。控件是一种GUI元素,它是一种软件组件,包含在应用程序中,控制着该应用程序处理的所有数据以及关于这些数据的交互操作,用户可以通过直接操作(direct manipulation)来与控件交互,从而对应用程序的有关信息进行读取或者编辑。一般而言,控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。例如,在本申请实施例中,显示屏194可以显示虚拟按键。
终端设备可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,终端设备可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端设备在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。终端设备可以支持一种或多种视频编解码器。这样,终端设备可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端设备的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行终端设备的各种功能应用以及数据处理。例如,在本实施例中,处理器110可以通过执行存储在内部存储器121中的指令,通过本申请实施例公开的方案实现AP的部署。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universalflash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行终端设备的各种功能应用以及数据处理。
终端设备可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。终端设备可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当终端设备接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。终端设备可以设置至少一个麦克风170C。在另一些实施例中,终端设备可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,终端设备还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动终端设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。终端设备根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,终端设备根据压力传感器180A检测所述触摸操作强度。终端设备也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定终端设备的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定终端设备围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测终端设备抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消终端设备的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,终端设备通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。终端设备可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当终端设备是翻盖机时,终端设备可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测终端设备在各个方向上(一般为三轴)加速度的大小。当终端设备静止时可检测出重力的大小及方向。还可以用于识别终端设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。终端设备可以通过红外或激光测量距离。在一些实施例中,拍摄场景,终端设备可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。终端设备通过发光二极管向外发射红外光。终端设备使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定终端设备附近有物体。当检测到不充分的反射光时,终端设备可以确定终端设备附近没有物体。终端设备可以利用接近光传感器180G检测用户手持终端设备贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。终端设备可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测终端设备是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。终端设备可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,终端设备利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,终端设备执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,终端设备对电池142加热,以避免低温导致终端设备异常关机。在其他一些实施例中,当温度低于又一阈值时,终端设备对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于终端设备的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。终端设备可以接收按键输入,产生与终端设备的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和终端设备的接触和分离。终端设备可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。终端设备通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,终端设备采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在终端设备中,不能和终端设备分离。
另外,在上述部件之上,运行有操作系统。例如苹果公司所开发的iOS操作系统,谷歌公司所开发的Android开源操作系统,微软公司所开发的Windows操作系统等。在该操作系统上可以安装运行应用程序。
在一个示例中,所述终端设备可以为手机。这种情况下,图2公开该示例对应的一种应用场景示意图,参见图2,其中包括手机220以及服务器210。其中,该手机220内安装有各种App,并且,该手机220可通过网络与服务器210进行信息交互。该服务器210为分别为各种App对应的服务器,用于提供App对应的服务。
其中,所述终端设备可应用本申请实施例提供的应用管理方法,实现对自身安装的App的管理,从而解决现有技术中App功耗高的问题。
以下下面将具体结合附图阐述本申请的实施例,以明确本申请公开的应用管理方法。
参见图3所示的工作流程示意图,本申请实施例公开的应用管理方法包括以下步骤:
步骤S11、当安装在终端设备内的待管理的应用程序App满足第一条件时,所述终端设备控制所述App进入休眠状态。
所述终端设备内可安装多种类型的App,待管理的App通常指的是其中功耗较高的App。
另外,所述第一条件可为多种形式,通常当该App在一段时间内未进行数据处理,且用户暂时不需要使用该App时,可确定该App满足第一条件,以便使其进入休眠状态,从而减少该App造成的功耗。
在一种可行的实现方式中,当所述App在后台运行,并且所述App处于非活跃状态的时长大于预设的第一时长时,所述终端设备确定所述App满足所述第一条件。
其中,当App未执行自身需执行的功能操作时,通常认为该App处于非活跃状态。例如,对于音乐类的App,当其未执行音乐播放和音乐下载等相关的功能操作时,则认为该App处于非活跃状态;对于导航类的App,当其未执行导航等相关的功能操作时,则认为该App处于非活跃状态。或者,当App未执行任何功能操作时,可认为该App处于非活跃状态。
如果所述App在后台运行,表明用户当前不需要对该App进行操作。另外,当App处于非活跃状态时,表明该App虽然处于工作状态,但是并未执行自身对应的功能操作。这种状态持续的时长大于所述第一时长时,为了减少该App的功耗,终端设备可控制该App进入休眠状态。
其中,所述第一时长可设置为10秒,当然,也可以设置为其他时长,或者,终端设备在根据不同类型的数据包唤醒所述App之后,当再次确定所述App是否满足第一条件时,所对应的第一时长可不同,本申请实施例对此不做限定。
步骤S12、所述终端设备获取数据包。
在本申请实施例中,App在进入休眠状态之后,终端设备则监听数据包的变化,以便确定是否获取到数据包。
在本申请实施例中,终端设备能够获取多种类型的数据包。在一种可行的实现方式中,所述终端设备获取的数据包包括:超时重传数据包、挥手协议数据包和所述App的服务器向所述终端设备推送的消息数据包。
其中,终端设备在与服务器进行信息传输的过程中,往往遵循超时重传机制。所述超时重传机制指的是,信息发送方在向信息接收方发送信息之后,若预设的时间段内没有接收到信息接收方的反馈,则信息发送方会重新向信息接收方发送所述信息。这种情况下,所述信息发送方重新向信息接收方发送的信息即为超时重传数据包。
在一个示例中,当所述App为新闻类的App时,在进入休眠状态前,所述App可能向该App的服务器发送了新闻请求信息,以请求该App的服务器向该App发送新闻数据。但是,该App始终未收到该新闻数据,这种情况下,即使App进入休眠状态,也会生成相应的重传数据包,并向该服务器发送所述重传数据包。
另外,所述终端设备获取的数据包还可能是挥手协议数据包。其中,当第一端与第二端建立的链接为传输控制协议(transmission control protocol,TCP)链接时,如果第一端完成数据发送任务,并希望终止该TCP链接,会发送结束数据包;第二端在接收到所述结束数据包之后,会反馈一个确认数据包,并在结束该TCP链接之后,向第一端发送结束数据包;所述第一端在接收到所述结束数据包之后,会向第二端发送确认数据包,这一过程中,第一端与第二端之间发送的数据包即为挥手协议数据包。
在本申请实施例中,当App与该App的服务器建立TCP链接时,可认为所述App与所述App的服务器分别为建立有TCP链接的第一端与第二端。这种情况下,即使App处于休眠状态,也可能会接收到App的服务器传输的挥手协议数据包。
另外,App的服务器还会向App推送消息数据包。例如,当该App为即时通信类的App时,该App的服务器会向该App推送通信数据包。
当然,所述终端设备获取到的数据包还可以包括其他类型,本申请实施例对此不作限定。终端设备在控制App进入休眠状态之后,即可监听App处于休眠状态时的数据包变化情况,从而获取各种类型的数据包。
步骤S13、当所述数据包符合所述唤醒粒度对应的唤醒条件时,所述终端设备唤醒所述App。
为了满足不同场景下的唤醒需求,在本申请实施例中,可预先设置至少两种唤醒粒度,其中,不同唤醒粒度对应的唤醒条件不同,所述终端设备获取数据包之后,根据App当前的唤醒粒度,确定数据包是否符合唤醒粒度对应的唤醒条件。
当所述数据包符合所述唤醒粒度对应的唤醒条件时,所述终端设备会唤醒所述App,以便所述App进入工作状态。
本申请实施例公开的应用管理方法,当终端设备确定待管理的App满足第一条件时,则控制所述App进入休眠状态;在获取数据包之后,根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件;当确定所述数据包符合所述唤醒粒度对应的唤醒条件时,所述终端设备唤醒所述App。
通过本申请实施例公开的方法,终端设备会在App满足第一条件时,控制App进入休眠状态,并在获取到的数据包满足当前的唤醒粒度对应唤醒条件时,终端设备唤醒App,从而避免App错失数据包,并且,由于该方案能够在App满足第一条件时,控制App进入休眠状态,因此能够避免App一直处于工作状态,从而能够减少App的功耗。
其中,终端设备可通过自身的后台应用管理模块控制App进入休眠状态。
进一步的,通过本申请实施例的方法,能够减少终端设备内安装的App的功耗,因此还能够延长终端的使用时长。
在本申请实施例中,需要根据App当前的唤醒粒度,确定终端设备获取到的数据包是否符合所述唤醒粒度对应的唤醒条件。为了满足不同的应用需求,所述唤醒粒度包括多种类型。在一种可行的实现方式中,所述唤醒粒度包括:应用粒度、进程粒度和传输控制协议(transmission control protocol,TCP)协议。
参见图4所示的工作流程示意图,当所述App当前的唤醒粒度为应用粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括以下步骤:
步骤S121、所述终端设备获取所述数据包中加载的用户标识符(useridentifier,UID)。
步骤S122、所述终端设备根据所述UID,判断所述数据包是否为所述App对应的数据包。若是,执行步骤S123的操作。
与App相关的各种数据包中,通常加载有UID,其中,一个App往往对应一个UID,或者,在安卓操作系统中,部分应用会共享一个UID,这部分应用通常称为共享UID的App。也就是说,非共享UID的各个App所对应的UID不同,而共享UID的各个App的UID相同。
步骤S123、当确定所述数据包为所述App对应的数据包时,所述终端设备确定所述数据包符合所述唤醒粒度对应的唤醒条件。
其中,当所述唤醒粒度为应用粒度时,指的是当所述终端设备获取到的数据包为该App对应的数据包时,就确定所述数据包符合所述唤醒粒度对应的唤醒条件。这种情况下,终端设备获取到与该应用相关的数据包时,就确定该数据包符合应用粒度对应的唤醒条件,需要唤醒该App,从而能够保障App能够收到各种类型的数据包,避免App错过数据包。进一步的,App在收到所述数据包之后,还可以展示该数据包包含的消息,例如,所述数据包中包含订单消息时,所述App在收到所述数据包之后,还可以展示所述订单,以供用户查看。
另外,所述App与其他App共享一个UID时,即所述App与其他App为共享UID的App时,终端设备在唤醒所述App的同时,还会唤醒所述其他App,即同时唤醒共享UID的各个App。
进一步的,在上述实施例中,当所述终端设备根据所述UID,确定所述数据包并非所述App对应的数据包时,还可以包括以下步骤:
步骤S124、当确定所述数据包不是所述App对应的数据包时,所述终端设备获取新的数据包,之后再返回执行步骤S121的操作。
另外,当所述App当前的唤醒粒度为进程粒度时,参见图5所示的工作流程示意图,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括以下步骤:
步骤S125、所述终端设备获取所述数据包中加载的用户标识符UID。
步骤S126、所述终端设备根据所述UID,判断所述数据包是否为所述App对应的数据包,若是,执行步骤S127的操作。
其中,步骤S125和步骤S126的具体操作过程与步骤S121和步骤S122的具体操作过程相同,可相互参照,此处不再赘述。
步骤S127、当确定所述数据包为所述App对应的数据包时,所述终端设备判断传输所述数据包的套接字socket是否为第一进程的socket。若是,执行步骤S128的操作。
一个App往往包含一个或多个进程,其中需要与该App的服务器进行信息交互的进程可与服务器建立相应的socket,以便通过该socket收发数据。这种情况下,当终端设备获取数据包时,即可确定传输数据包的socket是否为第一进程的socket。
具体的,终端设备在判断传输所述数据包的socket是否为第一进程的socket时,可获取第一进程的进程标识符(process identification,PID),并且,确定传输所述数据包的socket对应的进程的PID,并对这两种PID进行匹配。当这两种PID相同时,则表明传输数据包的socket为所述第一进程的socket。
步骤S128、当所述传输所述数据包的socket为所述第一进程的socket时,所述终端设备确定所述数据包符合所述唤醒粒度对应的唤醒条件。
在一个示例中,所述第一进程为处理服务器推送的消息数据包的进程,这种情况下,当终端设备确定获取到的数据包为所述App对应的数据包,并且传输所述数据包的socket为App与服务器之间进行信息交互的socket时,终端设备会确定所述数据包符合进程粒度对应的唤醒条件。
或者,在另一个示例中,所述第一进程为生成超时重传数据包的进程,这种情况下,当终端设备获取到该App对应的超时重传数据包时,则确定所述数据包符合进程粒度对应的唤醒条件。
当所述唤醒粒度为进程粒度时,则当所述终端设备获取到的数据包为该App的特定进程(即所述第一进程)对应的数据包时,确定所述数据包符合进程粒度对应的唤醒条件。这种情况下,在本申请实施例公开的方案中,当App的唤醒粒度为进程粒度时,终端设备获取到数据包,并确定该数据包为待管理的App对应的数据包之后,判断传输所述数据包的socket是否为第一进程的socket;当确定传输所述数据包的socket为第一进程的socket时,终端设备再确定所述数据包符合进程粒度对应的唤醒条件。
通过本申请实施例公开的方案,当App的唤醒粒度为进程粒度时,终端设备在获取针对App的第一进程的数据包之后,确定满足进程粒度对应的唤醒条件,才唤醒App。而在获取到其他进程的数据包之后,不对App进行唤醒,从而能够减少App的唤醒次数,进一步减少App的功耗。
进一步的,当通过步骤S126的操作,终端设备确定所述数据包并非所述App对应的数据包,或者,当通过步骤S127的操作,终端设备确定推送所述数据包的socket并非所述第一进程的socket时,还可以包括以下步骤:
步骤S129、所述终端设备获取新的数据包,之后再返回执行步骤S125的操作。
另外,在本申请实施中,所述第一进程通常为App的关键进程,可通过多种方式确定所述第一进程。
在其中一种方式中,可通过对终端设备的配置操作确定所述第一进程。该方式中,在接收到第一确定操作之后,终端设备通过显示屏显示App包括的各个进程,其中,所述第一确定操作可为对终端设备的触控操作,该触控操作可针对终端设备的物理按键、虚拟按键或物理按键及虚拟按键的组合;或者,所述第一确定操作还可以为预设的手势操作;或者,所述第一确定操作还可以为预设的语音指令等。当然,所述第一确定操作还可以为其他形式,本申请实施例对此不做限定。
在终端设备通过第一确定操作显示所述App包括的各个进程之后,再根据接收到的第二确定操作,确定所述第二确定操作对应的进程为第一进程。其中,所述第二确定操作可为针对显示屏显示的某一进程的点击操作,或者,还可以为语音指令,所述语音指令中包括进程的编号或者名称等。当然,所述第二确定操作还可以为其他形式,本申请实施例对此不做限定。这种情况下,所述第一确定操作和第二确定操作即为配置操作。
通过上述方式,终端设备能够基于接收到的配置操作,确定App的第一进程。
在第二种方式中,终端设备可根据预设的规则,确定所述App的各个进程中的第一进程。在一个示例中,所述终端设备可根据历史使用记录,确定App的各个进程中应用较为频繁的进程,并确定所述应用较为频繁的进程的第一进程。通常可认为App中应用较为频繁的进程为App中较为关键的进程,因此,在该示例中,根据应用的频繁程度确定第一进程。
在另一个示例中,所述终端设备根据App需要执行的功能,以及该App的各个进程的功能之间的关联程度,确定所述第一进程,这种情况下,终端设备确定其中关联程度最高的一个或几个进程为所述第一进程。
例如,当该App为即时通讯类的App时,该App需要执行的主要功能为接收其他用户的通信信息并显示,这种情况下,需要执行这一功能的进程可被确定为第一进程。
或者,还可以通过预先设置白名单的方式,确定第一进程,在该方式中,预先在终端设备中设置白名单,白名单中记载的进程即为第一进程,这种情况下,在执行本申请实施例公开的方法时,通过查询白名单,即可确定所述第一进程。
另外,当所述App当前的唤醒粒度为TCP粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括以下步骤:
第一步,所述终端设备获取所述数据包中加载的用户标识符UID;
第二步,所述终端设备根据所述UID,判断所述数据包是否为所述App对应的数据包。
上述两个步骤,与步骤S121和步骤S122的具体操作过程相同,可相互参照,此处不再赘述。
第三步,当确定所述数据包为所述App对应的数据包时,所述终端设备判断传输所述数据包的套接字socket是否为第一TCP的socket,当所述传输所述数据包的socket为所述第一TCP的socket时,所述终端设备确定所述数据包符合所述唤醒粒度对应的唤醒条件。
一个App可包括一个或多个进程,而一个进程可建立一条或多条TCP连接。通常一条TCP连接对应一个socket,不同的TCP连接的socket不同,因此,通过socket可对各条TCP连接进行区分。
通过上述步骤,当App的唤醒粒度为TCP粒度时,终端设备在获取针对App的第一TCP的数据包之后,确定满足TCP粒度对应的唤醒条件,才唤醒App。而在获取到其他TCP的数据包之后,不对App进行唤醒,从而能够减少App的唤醒次数,进一步减少App的功耗。
另外,当确定所述数据包并非为所述App对应的数据包,或者,当确定传输所述数据包的套接字socket并非为第一TCP的socket时,终端设备还可以在获取新的数据包之后,再返回执行上述第一步的操作。
另外,在本申请实施中,所述第一TCP通常为App的关键TCP,可通过多种方式确定所述第一TCP。
在其中一种方式中,可根据对终端设备的配置操作,确定所述第一TCP。这种情况下,终端设备接收到显示TCP的操作之后,可通过显示屏显示App包括的各个TCP,然后,根据接收到的TCP选择操作,确定其中的第一TCP。其中,显示TCP的操作和TCP选择操作即为配置操作。通过这一方式,终端设备能够基于接收到的配置操作,确定App的第一TCP。
在第二种方式中,终端设备可根据预设的规则,确定所述App的各个TCP中的第一TCP。在一个示例中,所述终端设备可根据历史使用记录,确定App的各个TCP中应用较为频繁的TCP,并确定所述应用较为频繁的TCP为第一TCP。通常可认为App中应用较为频繁的TCP为App中较为关键的TCP,因此,在该示例中,根据应用频繁程度确定第一TCP。
在另一个示例中,所述终端设备根据App需要执行的功能,以及该App的各个TCP的功能之间的关联程度,确定所述第一进程,这种情况下,终端设备确定其中关联程度最高的一个或几个TCP为所述第一TCP。
或者,还可以通过预先设置白名单的方式,确定第一TCP,在该方式中,预先在终端设备中设置白名单,白名单中记载的TCP即为第一TCP,这种情况下,在执行本申请实施例公开的方法时,通过查询白名单,即可确定所述第一TCP。
进一步的,为了维持App与App的服务器之间的链接,需要App周期性的向服务器发送心跳数据包,以便通过该心跳数据包维持App与App的服务器之间的链接。
这种情况下,在本申请实施例中,在所述终端设备控制所述App进入休眠状态之后,还包括以下步骤:
所述终端设备每隔预设周期唤醒所述App,以使所述App发送心跳数据包。
具体的,可设置所述App的定时器,通过该定时器确定每个预设周期结束时,则可唤醒所述App以便唤醒的App向服务器发送心跳数据包。当App处于休眠状态时,App的定时器仍然能够工作,从而能够每隔预设周期,唤醒所述App,以便唤醒的App向服务器发送心跳数据包。
进一步的,在本申请实施例中,参见图6所示的工作流程示意图,本申请实施例公开的应用管理方法中,在通过步骤S13的操作,终端设备唤醒所述App之后,还可以返回执行步骤S11的操作。
也就是说,在本申请实施例中,在所述终端设备唤醒所述App之后,还包括:
所述终端设备继续确定所述App是否满足第一条件,并且,所述终端设备在确定所述App满足所述第一条件时,再次控制所述App进入休眠状态。
通过本申请实施例的方案,在唤醒所述App之后,如果确定所述App满足第一条件,则及时控制所述App进入休眠状态,从而进一步减少App处于工作状态的时间,减少App的功耗。
例如,为了维持App与App的服务器之间的链接,App每隔预设周期,向服务器发送心跳数据包。所述服务器接收到App发送的心跳数据包之后,往往还会反馈心跳数据包。在获取到服务器反馈的心跳数据包后,当App在后台运行,并且处于非活跃状态的时长大于预设的第一时长(例如6秒)内,终端设备会控制App再次进入休眠状态,从而能够进一步减少App的功耗。
另外,在上述步骤中,确定所述App是否满足第一条件时,通常在所述App在后台运行,并且所述App处于非活跃状态的时长大于预设的第一时长时,确定所述App满足第一条件。如果所述App根据不同情况(例如,接收到不同类型的数据包,或者需要发送心跳数据包等情况)被唤醒,在判断所述App是否满足第一条件时,所针对的第一时长可以不同。
为了明确本申请的方案,本申请实施例还公开一种应用管理的处理架构示意图,参见图7,在该示意图中,终端设备在确定App退后台,并且进入非活跃状态的时间达到预设的第一时长之后,控制所述App进入休眠状态。其中,执行这一部分操作的模块可称为应用管理模块。另外,终端设备可通过自身的网络层获取数据包。
在控制App进入休眠状态之后,终端设备会确定当前的唤醒粒度,并监听数据包的变化,以确定是否获取到数据包,执行这一部分操作的模块可称为监听数据包变化模块。
在该示例的处理架构中,可设置Netfilter,该Netfilter为Linux 2.4.x引入的一个子系统,提供一组hook函数(即钩子函数),并且,Netfilter可调用套接字socket管理模块,通过socket管理模块获取APP对应的socket信息。
这种情况下,监听数据包变化模块可向Netfilter注册钩子(hook)函数,并且,在确定获取数据包后,所述监听数据包变化模块可回调该hook函数,通过该hook函数检测所述数据包是否符合当前的唤醒粒度对应的唤醒条件。
当监听数据包变化模块确定获取到的数据包符合唤醒粒度对应的唤醒条件时,可指示应用管理模块,由应用管理模块唤醒App,这种情况下,终端设备会将App从休眠状态中唤醒。App在被唤醒之后,执行相应的功能操作。
进一步的,App在被唤醒之后,应用管理模块继续确定所述App是否需要进入休眠状态,其中,当所述应用管理模块确定App退后台,并且处于非活跃状态一段时间之后,再次控制所述App进入休眠状态。
当然,本申请实施例中的终端设备还可通过其他形式的处理架构实现本申请的应用管理方法,本申请实施例对此不做限定。
其中,终端设备获取到的数据包可为多种类型,并且,每隔预设周期,还需要App发送心跳数据包,当App需要发送心跳数据包时,如果App处于休眠状态,该App的定时器会唤醒所述App,以便唤醒后的App发送所述心跳数据包。这种情况下,当唤醒粒度为应用粒度时,本申请还公开了图8。
在图8中的第一条水平线,该水平线为一条时间轴,表示每隔预设周期,需要App向App服务器发送一次心跳数据包,每次需要App发送心跳数据包,并且App处于休眠状态时,会唤醒所述App,并在App接收到App的服务器反馈的心跳数据包之后一定时间后,若终端设备始终未获取App的数据包,则控制App再次进入休眠状态。
在图8中的第二条水平线,表示不同时间下,终端设备获取到的App相关的各项数据包,并且,箭头向上,表示该数据包由终端设备发出,箭头向下,表示该数据包由终端设备接收。其中,数据包1即为所述心跳数据包。
在图8中最下方的方框图,则表示App的状态,其中,App的状态包括休眠状态和唤醒状态。
另外,App在处于休眠状态时,App的服务器有可能向该App推送消息数据包。在图8中,数据包2即为所述消息数据包。终端设备在获取所述消息数据包之后,如果确定该消息数据包为所述App对应的数据包,则唤醒所述App,以便所述App对所述消息数据包进行处理。
所述App在被唤醒之后,通常还会向所述服务器反馈确认接收的数据包。并且,在反馈所述确认接收的数据包,并且App对接收到的消息数据包进行处理之后,如果所述终端设备确定所述App满足第一条件,则会控制所述App再次进入休眠状态。
另外,终端设备获取到的数据包可包括超时重传数据包。所述超时重传数据包往往由App的协议层生成,当App处于休眠状态时,处于休眠状态的为App的应用层,因此,即使App处于休眠状态,仍然能够生成超时重传数据包。如果App在未处于休眠状态时,向App的服务器发送了消息,但是,App在预设的时间段内,始终未接收到服务器的反馈,这种情况下,即使App处于休眠状态,也会向App的服务器发送超时重传数据包。在图8中,数据包3即为所述超时重传数据包。
而所述服务器在获取所述超时重传数据包之后,通常会向App反馈该超时重传数据包对应的消息数据包。这种情况下,当终端设备获取到App生成的超时重传数据包时,也会唤醒App,以便唤醒后的App能够及时处理所述服务器反馈的消息数据包。
进一步的,App在被唤醒之后,如果终端设备再次确定所述App满足第一条件,则会控制所述App再次进入休眠状态。
另外,所述终端设备获取的数据包还可能是挥手协议数据包。如果App在进入休眠状态之前,向App的服务器发送了挥手协议数据包,在处于休眠状态之后,终端设备也可能会获取该App的服务器发送的挥手协议数据包。在图8中,数据包4即为挥手协议数据包。
这种情况下,终端设备在获取所述挥手协议数据包之后,也可唤醒App。另外,在唤醒App之后,当终端设备确定App满足第一条件时,则会控制所述App再次进入休眠状态。
另外,当唤醒粒度为进程粒度,并且第一进程为处理服务器推送的消息数据包的进程时,本申请还公开了图9。
在图9中的第一条水平线,该水平线为一条时间轴,表示每隔预设周期,需要App向App服务器发送一次心跳数据包,每次需要App发送心跳数据包,并且App处于休眠状态时需要唤醒所述App,并在App接收到App的服务器反馈的心跳数据包之后一定时间后,若终端设备始终未获取App的数据包,则控制App再次进入休眠状态。
在图9中的第二条水平线,表示不同时间下,终端设备获取到的App相关的各项数据包,并且,箭头向上,表示该数据包由终端设备发出,箭头向下,表示该数据包由终端设备接收。其中,数据包1即为所述心跳数据包。
在图9中最下方的方框图,则表示App的状态,其中,App的状态包括休眠状态和唤醒状态。
另外,在图9中,数据包2为App的服务器推送的消息数据包。在终端设备获取到所述消息数据包之后,确定该消息数据包为第一进程对应的数据包,这种情况下,终端设备会唤醒所述App,以便所述App对所述消息数据包进行处理。
所述App在被唤醒之后,当终端设备确定所述App满足第一条件时,则会控制所述App再次进入休眠状态。
另外,终端设备还可获取超时重传数据包和挥手协议数据包,其中,在图9中,数据包3为超时重传数据包,数据包4为挥手协议数据包。
当终端设备获取超时重传数据包和挥手协议数据包时,可根据传输超时重传数据包和挥手协议数据包的链路,确定所述数据包不符合进程粒度对应的唤醒条件。这种情况下,终端设备不会唤醒所述App。
上述示例中,分别介绍了针对不同的唤醒粒度,确定数据包是否符合唤醒粒度对应的唤醒条件的方案。其中,在本申请实施例中,终端设备还可以通过多种方式,确定当前的唤醒粒度。
在其中一种可行的方式中,在所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件之前,所述终端设备获取当前的剩余电量,当所述剩余电量小于预设的第一阈值时,所述终端设备确定所述App当前的唤醒粒度为进程粒度或TCP粒度;当所述剩余电量不小于所述第一阈值时,所述终端设备确定所述App当前的唤醒粒度为应用粒度。
上述实施例中,终端设备基于剩余电量确定唤醒粒度。如果当前的剩余电量小于预设的第一阈值,则表明终端设备电量不充足,这种情况下,确定唤醒粒度为进程粒度或TCP粒度,能够减少App被唤醒的次数,减少电量的耗费。另外,如果当前的剩余电量不小于预设的第一阈值,则表明终端设备电量较为充足,这种情况下,可确定唤醒粒度为应用粒度,从而能够使App及时处理各种类型的信息。
在另一种可行的实现方式中,在所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件之前,所述终端设备确定当前的工作模式;当所述工作模式为省电模式时,所述终端设备确定所述App当前的唤醒粒度为进程粒度或TCP粒度;当所述工作模式为非省电模式时,所述终端设备确定所述App当前的唤醒粒度为应用粒度。
在上述实施例中,终端设备基于自身的工作模式确定唤醒粒度。其中,如果工作模式为省电模式,则确定唤醒粒度为进程粒度或TCP粒度,能够减少App被唤醒的次数,从而达到省电的目的。另外,如果工作模式为非省电模式,则确定唤醒粒度为应用粒度,以便所述App及时处理各种类型的信息。
在另一种可行的实现方式中,在所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件之前,所述终端设备确定当前的工作模式;当所述工作模式为夜间模式时,所述终端设备确定所述App当前的唤醒粒度为进程粒度或TCP粒度;当所述工作模式为白天模式时,所述终端设备确定所述App当前的唤醒粒度为应用粒度。
当处于夜间模式时,终端设备的用户通常并不关注App的工作情况,而当处于白天模式时,终端设备的用户则较为关注App的工作情况。因此,还可以根据终端设备是处于夜间模式还是处于白天模式,确定终端设备的唤醒粒度。
当然,还可以通过其他方式确定唤醒粒度,本申请实施例对此不做限定。
另外,在上述各个实施例中,终端设备对待管理的App进行管理,以减少该App的功耗,其中,终端设备可通过多种方式确定待管理的App。
在其中一种方式中,所述终端设备控制所述App进入休眠状态之前,所述终端设备根据接收到的第一操作,显示App列表,所述App列表包括所述终端设备内安装的各个App;所述终端设备根据接收到的针对所述App列表的第二操作,确定所述第二操作选择的App为所述待管理的App。
在上述方式中,终端设备可基于用户的配置操作,确定待管理的App。
或者,在另一种方式中,所述终端设备控制所述App进入休眠状态之前,所述终端设备通过自身安装的各个App的历史使用记录,确定所述各个App中,在预设时间段内功耗超过预设的第二阈值的第一App;
然后,所述终端设备根据所述第一App的工作状态,确定所述第一App中的待管理的App,其中,所述待管理的App为所述第一App中,在所述预设时间段内在后台运行,并且处于非活跃状态的App。
在上述实施例中,终端设备根据各个App的功耗确定待管理的App。该种方式中,终端设备首先确定第一App,第一App在预设时间段内功耗超过预设的第二阈值,则表明该第一App的功耗较多。然后,再根据第一App的工作状态,确定第一App中的待管理的App,其中,所述待管理的App为所述第一App中,在所述预设时间段内在后台运行,并且处于非活跃状态的App,也就是说,第一App中的部分App在后台运行,并且处于非活跃状态的情况下,仍然功耗较多,因此,可将这部分App确定为待管理App,以便通过本申请实施例的方式,对这部分App进行管理,以减少功耗,提高终端设备的使用时长。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
本申请实施例公开一种应用管理装置,该应用管理装置应用于终端设备,参见图10所示的结构示意图,所述应用管理装置包括:处理器1101、存储器和收发器1102。
所述存储器,用于存储程序指令;
所述收发器1102,用于收发数据;
所述处理器1101,用于调用并执行所述存储器中存储的程序指令,所述处理器执行所述程序指令时,使得所述装置执行以下操作:
当安装在所述终端设备内的待管理的应用程序App满足第一条件时,控制所述App进入休眠状态;
当所述终端设备获取到的数据包符合所述App当前的唤醒粒度对应的唤醒条件时,唤醒所述App。
进一步的,该设备还可以包括:总线1103,所述存储器包括随机存取存储器1104和只读存储器1105。
其中,处理器通过总线分别耦接收发器、随机存取存储器以及只读存储器。其中,当需要运行该应用管理装置运行时,通过固化在只读存储器中的基本输入输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导该装置进入正常运行状态。在该装置进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,从而使所述应用管理装置执行图3至图6对应的实施例中的全部或部分步骤。
本发明实施例的应用管理装置可对应于上述图3至图6所对应的实施例中的数据存储装置,并且,该应用管理装置中的处理器等可以实现图3至图6所对应的实施例中的终端设备所具有的功能和/或所实施的各种步骤和方法。
也就是说,在本申请实施例中,当所述App在后台运行,并且所述App处于非活跃状态的时长大于预设的第一时长时,所述处理器确定所述App满足所述第一条件。
其中,所述唤醒粒度为应用粒度、进程粒度或传输控制协议TCP粒度。
进一步的,在本申请实施例公开的装置中,当所述App当前的唤醒粒度为应用粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述处理器获取所述数据包中加载的用户标识符UID;
所述处理器根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述处理器确定所述数据包符合所述唤醒粒度对应的唤醒条件。
进一步的,在本申请实施例公开的装置中,当所述App当前的唤醒粒度为进程粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述处理器获取所述数据包中加载的用户标识符UID;
所述处理器根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述处理器判断传输所述数据包的套接字socket是否为第一进程的socket;
当所述传输所述数据包的socket为所述第一进程的socket时,所述处理器确定所述数据包符合所述唤醒粒度对应的唤醒条件。
进一步的,在本申请实施例公开的装置中,当所述App当前的唤醒粒度为TCP粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述处理器获取所述数据包中加载的用户标识符UID;
所述处理器根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述处理器判断传输所述数据包的套接字socket是否为第一TCP的socket;
当所述传输所述数据包的socket为所述第一TCP的socket时,所述处理器确定所述数据包符合所述唤醒粒度对应的唤醒条件。
进一步的,在本申请实施例公开的装置中,在所述处理器控制所述App进入休眠状态之后,所述处理器还用于每隔预设周期唤醒所述App,以使所述App发送心跳数据包。
进一步的,在本申请实施例公开的装置中,在所述终端设备唤醒所述App之后,所述处理器还用于在确定所述App满足所述第一条件时,再次控制所述App进入休眠状态。
进一步的,在本申请实施例公开的装置中,在所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件之前,所述处理器还用于:
获取当前的剩余电量;
当所述剩余电量小于预设的第一阈值时,确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述剩余电量不小于所述第一阈值时,确定所述App当前的唤醒粒度为应用粒度;
或者,确定当前的工作模式;
当所述工作模式为省电模式时,确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为非省电模式时,确定所述App当前的唤醒粒度为应用粒度;
或者,确定当前的工作模式;
当所述工作模式为夜间模式时,确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为白天模式时,确定所述App当前的唤醒粒度为应用粒度。
进一步的,在本申请实施例公开的装置中,所述处理器控制所述App进入休眠状态之前,还用于:
所述根据接收到的第一操作,显示App列表,所述App列表包括所述终端设备内安装的各个App;
所述根据接收到的针对所述App列表的第二操作,确定所述第二操作选择的App为所述待管理的App;
或者,所述通过自身安装的各个App的历史使用记录,确定所述各个App中,在预设时间段内功耗超过预设的第二阈值的第一App;
所述根据所述第一App的工作状态,确定所述第一App中的待管理的App,其中,所述待管理的App为所述第一App中,在所述预设时间段内在后台运行,并且处于非活跃状态的App。
需要说明的是,本实施例也可以基于通用的物理服务器结合网络功能虚拟化(英文:Network Function Virtualization,NFV)技术实现的网络设备,所述网络设备为虚拟网络设备(如,虚拟主机、虚拟路由器或虚拟交换机)。所述虚拟网络设备可以是运行有用于发送通告报文功能的程序的虚拟机(英文:Virtual Machine,VM),所述虚拟机部署在硬件设备上(例如,物理服务器)。虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。本领域技术人员通过阅读本申请即可在通用物理服务器上虚拟出具有上述功能的多个网络设备。此处不再赘述。
具体实现中,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括指令。其中,设置在任意设备中计算机可读介质其在计算机上运行时,可实施包括图3至图6对应的实施例中的全部或部分步骤。所述计算机可读介质的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
另外,本申请另一实施例还公开一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备可实施包括图3至图6对应的实施例中的全部或部分步骤
本申请实施例中所描述的各种说明性的逻辑单元和电路可以通过通用处理器,数字信息处理器,专用集成电路(ASIC),现场可编程门阵列(FPGA)或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信息处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信息处理器核,或任何其它类似的配置来实现。
本申请实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件单元、或者这两者的结合。软件单元可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于UE中。可选地,处理器和存储媒介也可以设置于UE中的不同的部件中。
应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本说明书的各个部分均采用递进的方式进行描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点介绍的都是与其他实施例不同之处。尤其,对于装置和系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例部分的说明即可。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本发明实施方式并不构成对本发明保护范围的限定。
Claims (22)
1.一种应用管理方法,其特征在于,包括:
当安装在终端设备内的待管理的应用程序App满足第一条件时,所述终端设备控制所述App进入休眠状态;
所述终端设备获取数据包;
当所述数据包符合所述App当前的唤醒粒度对应的唤醒条件时,所述终端设备唤醒所述App。
2.根据权利要求1所述的方法,其特征在于,还包括:
当所述App在后台运行,并且所述App处于非活跃状态的时长大于预设的第一时长时,所述终端设备确定所述App满足所述第一条件。
3.根据权利要求1所述的方法,其特征在于,
所述唤醒粒度为应用粒度、进程粒度或传输控制协议TCP粒度。
4.根据权利要求3所述的方法,其特征在于,当所述App当前的唤醒粒度为应用粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述终端设备获取所述数据包中加载的用户标识符UID;
所述终端设备根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述终端设备确定所述数据包符合所述唤醒粒度对应的唤醒条件。
5.根据权利要求3所述的方法,其特征在于,当所述App当前的唤醒粒度为进程粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述终端设备获取所述数据包中加载的用户标识符UID;
所述终端设备根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述终端设备判断传输所述数据包的套接字socket是否为第一进程的socket;
当所述传输所述数据包的socket为所述第一进程的socket时,所述终端设备确定所述数据包符合所述唤醒粒度对应的唤醒条件。
6.根据权利要求3所述的方法,其特征在于,当所述App当前的唤醒粒度为TCP粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述终端设备获取所述数据包中加载的用户标识符UID;
所述终端设备根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述终端设备判断传输所述数据包的套接字socket是否为第一TCP的socket;
当所述传输所述数据包的socket为所述第一TCP的socket时,所述终端设备确定所述数据包符合所述唤醒粒度对应的唤醒条件。
7.根据权利要求1所述的方法,其特征在于,在所述终端设备控制所述App进入休眠状态之后,还包括:
所述终端设备每隔预设周期唤醒所述App,以使所述App发送心跳数据包。
8.根据权利要求1至7任一项所述的方法,其特征在于,在所述终端设备唤醒所述App之后,还包括:
所述终端设备在确定所述App满足所述第一条件时,再次控制所述App进入休眠状态。
9.根据权利要求1至8任一项所述的方法,其特征在于,在所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件之前,还包括:
所述终端设备获取当前的剩余电量;
当所述剩余电量小于预设的第一阈值时,所述终端设备确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述剩余电量不小于所述第一阈值时,所述终端设备确定所述App当前的唤醒粒度为应用粒度;
或者,
所述终端设备确定当前的工作模式;
当所述工作模式为省电模式时,所述终端设备确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为非省电模式时,所述终端设备确定所述App当前的唤醒粒度为应用粒度;
或者,
所述终端设备确定当前的工作模式;
当所述工作模式为夜间模式时,所述终端设备确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为白天模式时,所述终端设备确定所述App当前的唤醒粒度为应用粒度。
10.根据权利要求1所述的方法,其特征在于,所述终端设备控制所述App进入休眠状态之前,还包括:
所述终端设备根据接收到的第一操作,显示App列表,所述App列表包括所述终端设备内安装的各个App;
所述终端设备根据接收到的针对所述App列表的第二操作,确定所述第二操作选择的App为所述待管理的App;
或者,
所述终端设备通过自身安装的各个App的历史使用记录,确定所述各个App中,在预设时间段内功耗超过预设的第二阈值的第一App;
所述终端设备根据所述第一App的工作状态,确定所述第一App中的待管理的App,其中,所述待管理的App为所述第一App中,在所述预设时间段内在后台运行,并且处于非活跃状态的App。
11.一种应用管理装置,其特征在于,应用于终端设备,包括:
处理器、存储器和收发器;
其中,所述存储器,用于存储程序指令;
所述收发器,用于收发数据;
所述处理器,用于调用并执行所述存储器中存储的程序指令,所述处理器执行所述程序指令时,使得所述装置执行以下操作:
当安装在所述终端设备内的待管理的应用程序App满足第一条件时,控制所述App进入休眠状态;
当所述终端设备获取到的数据包符合所述App当前的唤醒粒度对应的唤醒条件时,唤醒所述App。
12.根据权利要求11所述的装置,其特征在于,当所述App在后台运行,并且所述App处于非活跃状态的时长大于预设的第一时长时,所述处理器确定所述App满足所述第一条件。
13.根据权利要求11所述的装置,其特征在于,
所述唤醒粒度为应用粒度、进程粒度或传输控制协议TCP粒度。
14.根据权利要求13所述的装置,其特征在于,当所述App当前的唤醒粒度为应用粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述处理器获取所述数据包中加载的用户标识符UID;
所述处理器根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述处理器确定所述数据包符合所述唤醒粒度对应的唤醒条件。
15.根据权利要求13所述的装置,其特征在于,当所述App当前的唤醒粒度为进程粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述处理器获取所述数据包中加载的用户标识符UID;
所述处理器根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述处理器判断传输所述数据包的套接字socket是否为第一进程的socket;
当所述传输所述数据包的socket为所述第一进程的socket时,所述处理器确定所述数据包符合所述唤醒粒度对应的唤醒条件。
16.根据权利要求13所述的装置,其特征在于,当所述App当前的唤醒粒度为TCP粒度时,所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件,包括:
所述处理器获取所述数据包中加载的用户标识符UID;
所述处理器根据所述UID,判断所述数据包是否为所述App对应的数据包;
当确定所述数据包为所述App对应的数据包时,所述处理器判断传输所述数据包的套接字socket是否为第一TCP的socket;
当所述传输所述数据包的socket为所述第一TCP的socket时,所述处理器确定所述数据包符合所述唤醒粒度对应的唤醒条件。
17.根据权利要求11所述的装置,其特征在于,
在所述处理器控制所述App进入休眠状态之后,所述处理器还用于每隔预设周期唤醒所述App,以使所述App发送心跳数据包。
18.根据权利要求11至17任一项所述的方法,其特征在于,
在所述终端设备唤醒所述App之后,所述处理器还用于在确定所述App满足所述第一条件时,再次控制所述App进入休眠状态。
19.根据权利要求11至18任一项所述的装置,其特征在于,在所述根据所述App当前的唤醒粒度,确定所述数据包是否符合所述唤醒粒度对应的唤醒条件之前,所述处理器还用于:
获取当前的剩余电量;
当所述剩余电量小于预设的第一阈值时,确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述剩余电量不小于所述第一阈值时,确定所述App当前的唤醒粒度为应用粒度;
或者,
确定当前的工作模式;
当所述工作模式为省电模式时,确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为非省电模式时,确定所述App当前的唤醒粒度为应用粒度;
或者,
确定当前的工作模式;
当所述工作模式为夜间模式时,确定所述App当前的唤醒粒度为进程粒度或TCP粒度;
当所述工作模式为白天模式时,确定所述App当前的唤醒粒度为应用粒度。
20.根据权利要求11所述的装置,其特征在于,所述处理器控制所述App进入休眠状态之前,还用于:
所述根据接收到的第一操作,显示App列表,所述App列表包括所述终端设备内安装的各个App;
所述根据接收到的针对所述App列表的第二操作,确定所述第二操作选择的App为所述待管理的App;
或者,
所述通过自身安装的各个App的历史使用记录,确定所述各个App中,在预设时间段内功耗超过预设的第二阈值的第一App;
所述根据所述第一App的工作状态,确定所述第一App中的待管理的App,其中,所述待管理的App为所述第一App中,在所述预设时间段内在后台运行,并且处于非活跃状态的App。
21.一种计算机可读存储介质,其特征在于,
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如权利要求1-10任一项所述的方法。
22.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1-10中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910882291.4A CN110687998A (zh) | 2019-09-18 | 2019-09-18 | 一种应用管理方法及装置 |
PCT/CN2020/115862 WO2021052410A1 (zh) | 2019-09-18 | 2020-09-17 | 一种应用管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910882291.4A CN110687998A (zh) | 2019-09-18 | 2019-09-18 | 一种应用管理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110687998A true CN110687998A (zh) | 2020-01-14 |
Family
ID=69109420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910882291.4A Pending CN110687998A (zh) | 2019-09-18 | 2019-09-18 | 一种应用管理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110687998A (zh) |
WO (1) | WO2021052410A1 (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111970755A (zh) * | 2020-08-20 | 2020-11-20 | 维沃移动通信有限公司 | 通信方法及装置 |
CN112084494A (zh) * | 2020-09-21 | 2020-12-15 | 百度在线网络技术(北京)有限公司 | 敏感信息检测方法、装置、设备以及存储介质 |
CN112162783A (zh) * | 2020-09-27 | 2021-01-01 | 珠海格力电器股份有限公司 | 音乐播放应用保活处理方法、系统、存储介质及电子设备 |
WO2021052410A1 (zh) * | 2019-09-18 | 2021-03-25 | 华为技术有限公司 | 一种应用管理方法及装置 |
CN113676339A (zh) * | 2020-05-14 | 2021-11-19 | 华为技术有限公司 | 组播方法、装置、终端设备及计算机可读存储介质 |
CN115513571A (zh) * | 2022-11-23 | 2022-12-23 | 荣耀终端有限公司 | 电池温度的控制方法和终端设备 |
WO2023004662A1 (zh) * | 2021-07-29 | 2023-02-02 | 华为技术有限公司 | 延迟产生方法及相关设备 |
CN115696520A (zh) * | 2021-07-30 | 2023-02-03 | 荣耀终端有限公司 | 数据通信方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105487855A (zh) * | 2015-11-20 | 2016-04-13 | 魅族科技(中国)有限公司 | 一种应用唤醒终端的方法及终端 |
CN106102141A (zh) * | 2016-05-31 | 2016-11-09 | 广东欧珀移动通信有限公司 | 一种基于数据包的处理方法及装置 |
CN106131804A (zh) * | 2016-06-21 | 2016-11-16 | 广东欧珀移动通信有限公司 | 一种通知消息处理方法及设备 |
CN107231679A (zh) * | 2017-06-20 | 2017-10-03 | 维沃移动通信有限公司 | 一种数据包处理方法及移动终端 |
US20180024615A1 (en) * | 2015-01-19 | 2018-01-25 | Yulong Computer Telecommunication Scientific (Shenzhen) Co., Ltd. | Power Saving Mode Control Method and Device for Multiple Operating Systems, and Terminal |
CN109144232A (zh) * | 2018-08-01 | 2019-01-04 | Oppo广东移动通信有限公司 | 进程处理方法和装置、电子设备、计算机可读存储介质 |
CN109388222A (zh) * | 2017-08-04 | 2019-02-26 | 中兴通讯股份有限公司 | 省电处理方法、装置及移动终端和计算机可读存储介质 |
CN109992360A (zh) * | 2017-12-29 | 2019-07-09 | 广东欧珀移动通信有限公司 | 进程处理方法和装置、电子设备、计算机可读存储介质 |
CN110032397A (zh) * | 2018-01-10 | 2019-07-19 | 广东欧珀移动通信有限公司 | 应用处理方法和装置、电子设备、计算机可读存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070061805A1 (en) * | 2005-09-15 | 2007-03-15 | Brenner Larry B | Method and apparatus for improving thread posting efficiency in a multiprocessor data processing system |
CN109814954B (zh) * | 2017-11-21 | 2021-08-24 | 腾讯科技(深圳)有限公司 | 推送消息接收方法、装置、存储介质和计算机设备 |
CN110687998A (zh) * | 2019-09-18 | 2020-01-14 | 华为技术有限公司 | 一种应用管理方法及装置 |
-
2019
- 2019-09-18 CN CN201910882291.4A patent/CN110687998A/zh active Pending
-
2020
- 2020-09-17 WO PCT/CN2020/115862 patent/WO2021052410A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180024615A1 (en) * | 2015-01-19 | 2018-01-25 | Yulong Computer Telecommunication Scientific (Shenzhen) Co., Ltd. | Power Saving Mode Control Method and Device for Multiple Operating Systems, and Terminal |
CN105487855A (zh) * | 2015-11-20 | 2016-04-13 | 魅族科技(中国)有限公司 | 一种应用唤醒终端的方法及终端 |
CN106102141A (zh) * | 2016-05-31 | 2016-11-09 | 广东欧珀移动通信有限公司 | 一种基于数据包的处理方法及装置 |
CN106131804A (zh) * | 2016-06-21 | 2016-11-16 | 广东欧珀移动通信有限公司 | 一种通知消息处理方法及设备 |
CN107231679A (zh) * | 2017-06-20 | 2017-10-03 | 维沃移动通信有限公司 | 一种数据包处理方法及移动终端 |
CN109388222A (zh) * | 2017-08-04 | 2019-02-26 | 中兴通讯股份有限公司 | 省电处理方法、装置及移动终端和计算机可读存储介质 |
CN109992360A (zh) * | 2017-12-29 | 2019-07-09 | 广东欧珀移动通信有限公司 | 进程处理方法和装置、电子设备、计算机可读存储介质 |
CN110032397A (zh) * | 2018-01-10 | 2019-07-19 | 广东欧珀移动通信有限公司 | 应用处理方法和装置、电子设备、计算机可读存储介质 |
CN109144232A (zh) * | 2018-08-01 | 2019-01-04 | Oppo广东移动通信有限公司 | 进程处理方法和装置、电子设备、计算机可读存储介质 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021052410A1 (zh) * | 2019-09-18 | 2021-03-25 | 华为技术有限公司 | 一种应用管理方法及装置 |
CN113676339A (zh) * | 2020-05-14 | 2021-11-19 | 华为技术有限公司 | 组播方法、装置、终端设备及计算机可读存储介质 |
CN113676339B (zh) * | 2020-05-14 | 2022-10-28 | 华为技术有限公司 | 组播方法、装置、终端设备及计算机可读存储介质 |
CN111970755A (zh) * | 2020-08-20 | 2020-11-20 | 维沃移动通信有限公司 | 通信方法及装置 |
CN112084494A (zh) * | 2020-09-21 | 2020-12-15 | 百度在线网络技术(北京)有限公司 | 敏感信息检测方法、装置、设备以及存储介质 |
CN112162783A (zh) * | 2020-09-27 | 2021-01-01 | 珠海格力电器股份有限公司 | 音乐播放应用保活处理方法、系统、存储介质及电子设备 |
CN112162783B (zh) * | 2020-09-27 | 2021-09-14 | 珠海格力电器股份有限公司 | 音乐播放应用保活处理方法、系统、存储介质及电子设备 |
WO2023004662A1 (zh) * | 2021-07-29 | 2023-02-02 | 华为技术有限公司 | 延迟产生方法及相关设备 |
CN115696520A (zh) * | 2021-07-30 | 2023-02-03 | 荣耀终端有限公司 | 数据通信方法及装置 |
CN115696520B (zh) * | 2021-07-30 | 2023-10-20 | 荣耀终端有限公司 | 数据通信方法及装置 |
CN115513571A (zh) * | 2022-11-23 | 2022-12-23 | 荣耀终端有限公司 | 电池温度的控制方法和终端设备 |
CN115513571B (zh) * | 2022-11-23 | 2023-06-13 | 荣耀终端有限公司 | 电池温度的控制方法和终端设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2021052410A1 (zh) | 2021-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110687998A (zh) | 一种应用管理方法及装置 | |
CN110347269B (zh) | 一种空鼠模式实现方法及相关设备 | |
CN111369988A (zh) | 一种语音唤醒方法及电子设备 | |
WO2021115007A1 (zh) | 一种网络切换方法及电子设备 | |
WO2020073288A1 (zh) | 一种触发电子设备执行功能的方法及电子设备 | |
WO2021052139A1 (zh) | 手势输入方法及电子设备 | |
CN114189846B (zh) | 避免漏接电话的方法、系统、电子设备及存储介质 | |
CN110806926A (zh) | 一种资源管控方法及设备 | |
CN112181616B (zh) | 任务处理方法及相关装置 | |
WO2021238387A1 (zh) | 一种执行应用的方法及装置 | |
WO2022089000A1 (zh) | 文件系统检测方法、电子设备及计算机可读存储介质 | |
WO2021052170A1 (zh) | 马达振动控制方法及电子设备 | |
WO2020019355A1 (zh) | 一种可穿戴设备的触控方法、可穿戴设备及系统 | |
CN113596942B (zh) | 通信管理方法、用户设备、系统及存储介质 | |
CN111061410B (zh) | 一种冻屏处理方法及终端 | |
WO2022037725A1 (zh) | 一种系统服务恢复方法、装置和电子设备 | |
CN114221402A (zh) | 终端设备的充电方法、装置和终端设备 | |
CN113676339B (zh) | 组播方法、装置、终端设备及计算机可读存储介质 | |
CN115878500A (zh) | 内存回收方法、装置、电子设备及可读存储介质 | |
CN113901485A (zh) | 应用程序加载方法、电子设备及存储介质 | |
CN114116610A (zh) | 获取存储信息的方法、装置、电子设备和介质 | |
CN113918003A (zh) | 检测皮肤接触屏幕时长的方法、装置及电子设备 | |
CN116723384B (zh) | 进程的控制方法、电子设备及可读存储介质 | |
CN116048772B (zh) | 中央处理单元频率的调整方法、装置和终端设备 | |
WO2024012443A1 (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 |