CN104023147A - 一种可使移动终端稳定休眠的方法及*** - Google Patents

一种可使移动终端稳定休眠的方法及*** Download PDF

Info

Publication number
CN104023147A
CN104023147A CN201410301414.8A CN201410301414A CN104023147A CN 104023147 A CN104023147 A CN 104023147A CN 201410301414 A CN201410301414 A CN 201410301414A CN 104023147 A CN104023147 A CN 104023147A
Authority
CN
China
Prior art keywords
application
dormancy
mobile terminal
pid
cpu
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410301414.8A
Other languages
English (en)
Other versions
CN104023147B (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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201410301414.8A priority Critical patent/CN104023147B/zh
Publication of CN104023147A publication Critical patent/CN104023147A/zh
Application granted granted Critical
Publication of CN104023147B publication Critical patent/CN104023147B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Telephone Function (AREA)

Abstract

本发明公开了一种可使移动终端稳定休眠的方法及***,方法包括下述步骤:S1、在手机准备进入休眠状态的时候,检测CPU锁是否被释放掉;S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致***无法休眠;S3、获取该应用的PID,即该应用的进程号,由于是该进程导致***无法休眠,那么强制杀掉该应用。***包括顺序连接的检测模块、定时模块以及应用关闭模块。运用本发明之后,在***睡眠的时候,可以检测到哪些应用导致***无法休眠,从而杀掉该应用,让***正常休眠,减少不必要的功耗。

Description

一种可使移动终端稳定休眠的方法及***
技术领域
本发明涉及移动终端休眠的研究领域,特别涉及一种可使移动终端稳定休眠的方法及***。
背景技术
在日常的使用过程中,我们偶尔会碰到手机过了一个晚上,电池电被消耗的差不多了的情况,本来以为手机休眠了,但是实际上,虽然屏幕熄灭了,但***并没有真正地休眠。这样,就会导致电池耗电很快,给用户带来很大的困扰。某个应用获取到CPU锁,如果在睡眠的时候,没有释放掉该锁,或者在***休眠的时候还在不断地申请该CPU锁,那么就会引起***无法休眠,导致大量耗电。本发明通过检测CPU锁的释放情况,来检测是那个应用获取的CPU锁,从而解决掉无法休眠的问题。
中国发明专利公开了一种终端休眠方法及终端(公开号为CN101631337A)该技术方案是:对于终端内的每个业务,根据业务的业务信息确定对应的网络保持时间和中央处理器CPU保持时间;对于每个业务,启动所述业务对应的第一定时器和第二定时器,其中,所述第一定时器的时长为所述CPU保持时间,所述第二定时器的时长为所述网络保持时间;在所述每个业务的第一定时器都到时的情况下,使CPU的休眠功能使能;在所述每个业务的第二定时器都到时的情况下,使无线模块的休眠功能使能;其中,所述网络保持时间为所述业务需要连续使用网络的时长,所述CPU保持时间为所述业务需要CPU连续运行的时长。但是,上述技术方案仍然不能充分解决在手机休眠时完全关掉应用的问题。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提供一种可使移动终端稳定休眠的方法。
本发明的另一目的在于,提供一种可使移动终端稳定休眠的***。
为了达到上述第一目的,本发明采用以下技术方案:
一种可使移动终端稳定休眠的方法,包括下述步骤:
S1、在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致***无法休眠;
S3、获取该应用的PID,即该应用的进程号,由于是该进程导致***无法休眠,那么强制杀掉该应用。
优选的,步骤S1中,检测CPU锁是否被释放掉的具体方法为:
S1.1、在***休眠的时候,利用接口函数检测当前CPU锁是否被持有;
S1.2、同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
优选的,步骤S2中,定时时间T为60S-120S。
优选的,步骤S3中,关闭该进程的方法为:
S3.1、获取binder通信对端的PID;
S3.2、向问题PID发送sig9信号从而杀掉进程。
优选的,如果***不断的申请CPU锁,则进行如下操作:
S4.1、在休眠后,如果***被频繁唤醒,那***也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录;
S4.2、如果在表中查询到有某一个应用多次唤醒,并且时间间隔都较短;说明该应用处于异常状态;
S4.3、获取该应用的PID,即该应用的进程号,由于是该进程导致***无法休眠,那么强制杀掉该应用。
优选的,步骤S4.1中,维护一张表的具体方法为:
通过数组的形式记录每个PID的申请cpu锁的次数,并保存到一个表格中;
如果PID在某个时间段内,申请cpu锁的次数超过设定次数,那么说明这个PID的应用异常了,则强制杀掉该应用。
优选的,所述移动终端为手机、电子书、掌上电脑或人机交互终端。
为了达到上述第二目的,本发明采用以下技术方案:
一种可使移动终端稳定休眠的***,包括:
检测模块,用于在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
定时模块,用于启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致***无法休眠;
应用关闭模块,用于获取该应用的PID,由于是该进程导致***无法休眠,那么强制杀掉该应用。
优选的,所述检测模块包括CPU锁检测模块,所述CPU锁检测模块用于在***休眠的时候,利用接口函数检测当前CPU锁是否被持有,并同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
优选的,所述应用关闭模块包括PID获取模块和信号发送模块;
所述PID获取模块,用于获取binder通信对端的PID;
所述信号发送模块,用于向问题PID发送sig9信号,从而杀掉进程。
本发明与现有技术相比,具有如下优点和有益效果:
1、运用本发明之后,在***睡眠的时候,可以检测到哪些应用导致***无法休眠,从而杀掉该应用,让***正常休眠,减少不必要的功耗。
2、本发明的方法应用广泛,可以在手机、平板电脑或者其他智能手持终端上运用,具有通用性。
3、本发明的方法在移动终端上使用时,可以减少手机的发烫,提升用户使用体验。
附图说明
图1是本发明实施例1的方法流程图;
图2是本发明实施例2的方法流程图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例1
如图1所示,本实施例一种可使移动终端稳定休眠的方法,包括下述步骤:
S1、在移动终端准备进入休眠状态的时候,检测CPU锁(PARTIAL_WAKE_LOCK)是否被释放掉;
S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致***无法休眠;
S3、获取该应用的PID,即该应用的进程号,由于是该进程导致***无法休眠,那么强制杀掉该应用。
步骤S1中,检测CPU锁是否被释放掉的具体方法为:
S1.1、在***休眠的时候,利用接口函数检测当前CPU锁是否被持有;
S1.2、同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
步骤S2中,定时时间T为60S-120S;以选定120S为例进行说明,在该定时时间到后,如果该锁仍没有被释放,即说明该应用可能出现某种故障(比如说没有收到某些返回值等等),这样,就一定会导致***无法休眠;所以采取本发明的方法来解决上述问题。在通常情况下,应用持有该CPU锁的时间往往都不超过60S。
步骤S3中,关闭该进程的方法为:
S3.1、获取binder通信对端的PID;
S3.2、向问题PID发送sig9信号从而杀掉进程。
当然,本实施例中所述的移动终端可以是手机、电子书、个人数字助理(PDA)、掌上电脑、人机交互终端或其他具有显示功能的手持式终端设备。
本实施例一种可使移动终端稳定休眠的***,包括:
检测模块,用于在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
定时模块,用于启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致***无法休眠;
应用关闭模块,用于获取该应用的PID,由于是该进程导致***无法休眠,那么强制杀掉该应用。
所述检测模块包括CPU锁检测模块,所述CPU锁检测模块用于在***休眠的时候,利用接口函数检测当前CPU锁是否被持有,并同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
所述应用关闭模块包括PID获取模块和信号发送模块;
所述PID获取模块,用于获取binder通信对端的PID;
所述信号发送模块,用于向问题PID发送sig9信号,从而杀掉进程。
实施例2
本实施例除了下述技术特征之外,其它技术特征与实施例1相同:
如图2所示,还存在这样一种情况,如果***不断的申请CPU锁,则进行如下操作:
S4.1、在休眠后,如果***被频繁唤醒(比如说2秒1次),那***也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录,其中N的取值可以根据实际的情况进行选定;
S4.2、如果在表中查询到有某一个应用多次唤醒(比如10次),并且时间间隔都较短;说明该应用处于异常状态;
S4.3、获取该应用的PID,即该应用的进程号,由于是该进程导致***无法休眠,那么强制杀掉该应用。
步骤S4.1中,维护一张表的具体方法为:
通过数组的形式记录每个PID的申请cpu锁的次数,并保存到一个表格中;
如果PID在某个时间段内,申请cpu锁的次数超过设定次数,那么说明这个PID的应用异常了,则强制杀掉该应用。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (10)

1.一种可使移动终端稳定休眠的方法,其特征在于,包括下述步骤:
S1、在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致***无法休眠;
S3、获取该应用的PID,即该应用的进程号,由于是该进程导致***无法休眠,那么强制杀掉该应用。
2.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,步骤S1中,检测CPU锁是否被释放掉的具体方法为:
S1.1、在***休眠的时候,利用接口函数检测当前CPU锁是否被持有;
S1.2、同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
3.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,步骤S2中,定时时间T为60S-120S。
4.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,步骤S3中,关闭该进程的方法为:
S3.1、获取binder通信对端的PID;
S3.2、向问题PID发送sig9信号从而杀掉进程。
5.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,如果***不断的申请CPU锁,则进行如下操作:
S4.1、在休眠后,如果***被频繁唤醒,那***也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录;
S4.2、如果在表中查询到有某一个应用多次唤醒,并且时间间隔都较短;说明该应用处于异常状态;
S4.3、获取该应用的PID,即该应用的进程号,由于是该进程导致***无法休眠,那么强制杀掉该应用。
6.根据权利要求5所述的可使移动终端稳定休眠的方法,其特征在于,步骤S4.1中,维护一张表的具体方法为:
通过数组的形式记录每个PID的申请cpu锁的次数,并保存到一个表格中;
如果PID在某个时间段内,申请cpu锁的次数超过设定次数,那么说明这个PID的应用异常了,则强制杀掉该应用。
7.根据权利要求1-6中任一项所述的可使移动终端稳定休眠的方法,其特征在于,所述移动终端为手机、电子书、掌上电脑或人机交互终端。
8.一种可使移动终端稳定休眠的***,其特征在于,包括:
检测模块,用于在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
定时模块,用于启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致***无法休眠;
应用关闭模块,用于获取该应用的PID,由于是该进程导致***无法休眠,那么强制杀掉该应用。
9.根据权利要求8所述的可使移动终端稳定休眠的***,其特征在于,所述检测模块包括CPU锁检测模块,所述CPU锁检测模块用于在***休眠的时候,利用接口函数检测当前CPU锁是否被持有,并同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
10.根据权利要求8所述的可使移动终端稳定休眠的***,其特征在于,所述应用关闭模块包括PID获取模块和信号发送模块;
所述PID获取模块,用于获取binder通信对端的PID;
所述信号发送模块,用于向问题PID发送sig9信号,从而杀掉进程。
CN201410301414.8A 2014-06-27 2014-06-27 一种可使移动终端稳定休眠的方法及*** Expired - Fee Related CN104023147B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410301414.8A CN104023147B (zh) 2014-06-27 2014-06-27 一种可使移动终端稳定休眠的方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410301414.8A CN104023147B (zh) 2014-06-27 2014-06-27 一种可使移动终端稳定休眠的方法及***

Publications (2)

Publication Number Publication Date
CN104023147A true CN104023147A (zh) 2014-09-03
CN104023147B CN104023147B (zh) 2016-05-11

Family

ID=51439709

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410301414.8A Expired - Fee Related CN104023147B (zh) 2014-06-27 2014-06-27 一种可使移动终端稳定休眠的方法及***

Country Status (1)

Country Link
CN (1) CN104023147B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020962A (zh) * 2016-05-31 2016-10-12 广东欧珀移动通信有限公司 一种进程控制方法及终端设备
CN106095645A (zh) * 2016-06-21 2016-11-09 广东欧珀移动通信有限公司 一种应用程序查找方法和装置
CN106686633A (zh) * 2017-02-20 2017-05-17 苏州蜗牛数字科技股份有限公司 一种阻止wifi恶意频繁唤醒的方法
CN107291212A (zh) * 2017-06-16 2017-10-24 深圳天珑无线科技有限公司 电源锁处理方法及装置
CN109947484A (zh) * 2019-02-25 2019-06-28 努比亚技术有限公司 一种唤醒锁的控制方法、终端及计算机可读存储介质
CN110572866A (zh) * 2019-07-26 2019-12-13 华为技术有限公司 一种唤醒锁的管理方法及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408861A (zh) * 2007-10-11 2009-04-15 鸿富锦精密工业(深圳)有限公司 应用程序实时监控***及方法
US20120209413A1 (en) * 2011-02-14 2012-08-16 Microsoft Corporation Background Audio on Mobile Devices
CN102946486A (zh) * 2012-11-20 2013-02-27 惠州Tcl移动通信有限公司 一种基于手机的后台应用自动清理方法及手机
CN103324519A (zh) * 2013-06-17 2013-09-25 华为技术有限公司 一种恶意耗电应用的清理方法、装置及用户终端
JP5324340B2 (ja) * 2009-06-29 2013-10-23 ルネサスエレクトロニクス株式会社 マイクロコンピュータ

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408861A (zh) * 2007-10-11 2009-04-15 鸿富锦精密工业(深圳)有限公司 应用程序实时监控***及方法
JP5324340B2 (ja) * 2009-06-29 2013-10-23 ルネサスエレクトロニクス株式会社 マイクロコンピュータ
US20120209413A1 (en) * 2011-02-14 2012-08-16 Microsoft Corporation Background Audio on Mobile Devices
CN102946486A (zh) * 2012-11-20 2013-02-27 惠州Tcl移动通信有限公司 一种基于手机的后台应用自动清理方法及手机
CN103324519A (zh) * 2013-06-17 2013-09-25 华为技术有限公司 一种恶意耗电应用的清理方法、装置及用户终端

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020962A (zh) * 2016-05-31 2016-10-12 广东欧珀移动通信有限公司 一种进程控制方法及终端设备
CN106020962B (zh) * 2016-05-31 2019-05-21 Oppo广东移动通信有限公司 一种进程控制方法及终端设备
US10719351B2 (en) 2016-05-31 2020-07-21 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for controlling states of processes and related device
US10754684B2 (en) 2016-05-31 2020-08-25 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for controlling process and related device
CN106095645A (zh) * 2016-06-21 2016-11-09 广东欧珀移动通信有限公司 一种应用程序查找方法和装置
CN106686633A (zh) * 2017-02-20 2017-05-17 苏州蜗牛数字科技股份有限公司 一种阻止wifi恶意频繁唤醒的方法
CN107291212A (zh) * 2017-06-16 2017-10-24 深圳天珑无线科技有限公司 电源锁处理方法及装置
CN109947484A (zh) * 2019-02-25 2019-06-28 努比亚技术有限公司 一种唤醒锁的控制方法、终端及计算机可读存储介质
CN110572866A (zh) * 2019-07-26 2019-12-13 华为技术有限公司 一种唤醒锁的管理方法及电子设备
CN110572866B (zh) * 2019-07-26 2021-03-30 华为技术有限公司 一种唤醒锁的管理方法及电子设备

Also Published As

Publication number Publication date
CN104023147B (zh) 2016-05-11

Similar Documents

Publication Publication Date Title
US9970966B2 (en) Method, device and computer storage medium for detecting power consumption of an application
CN104023147A (zh) 一种可使移动终端稳定休眠的方法及***
KR101641174B1 (ko) 셧다운 상태에서의 알람의 구현방법, 이동 단말기, 프로그램 및 기록매체
WO2020224658A1 (zh) 待机优化方法、装置、计算机设备和存储介质
JP5834366B2 (ja) 節電方法、装置および通信端末
CN103546951B (zh) 移动设备及其休眠管理方法
CN104244381B (zh) 唤醒控制方法、装置和终端设备
EP3190771B1 (en) Method and device for managing instant communication application program, and mobile terminal thereof
CN104221445A (zh) 一种唤醒终端***的方法及终端
KR20100101652A (ko) 모바일 네트워크 장치 배터리 보존 시스템 및 방법들
CN103619056A (zh) 一种上报传感器数据的方法和终端
CN104184907B (zh) 终端应用软件在待机状态下的唤醒数据的检测方法及终端
CN102779068A (zh) 移动终端和应用程序联网控制方法
US8659563B2 (en) Electronic device with a page turning function during a sleep mode of the electronic device
CN105704785A (zh) 一种网络搜索方法、装置及移动终端
CN110209428A (zh) 一种终端屏幕唤醒方法、装置、终端及存储介质
CN109067416A (zh) 一种实现sim卡热插拔及启动的方法和智能硬件
CN105824391A (zh) 一种定时器唤醒控制方法及电子设备
CN105867577A (zh) 一种终端唤醒方法及终端
CN106484075A (zh) 调整应用程序唤醒时间的方法及装置
WO2015172283A1 (zh) 一种降低功耗的方法、装置及移动终端
CN102833830A (zh) 一种唤醒移动智能终端方法及移动智能终端
CN104063316B (zh) 一种应用的测试方法及装置
CN108616906A (zh) 一种lte基站节能方法和装置
CN106648021A (zh) 低功耗电路的数据广播方法及低功耗电路

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee after: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd.

Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee before: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd.

CP01 Change in the name or title of a patent holder
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160511

CF01 Termination of patent right due to non-payment of annual fee