美文网首页
Android wakelocks

Android wakelocks

作者: vivian310 | 来源:发表于2021-09-03 16:15 被阅读0次

保持唤醒状态不进入休眠有两种方法

一、通过java代码实现

//先定义一个mWakeLock
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, this
                .getClass().getName());

//一直保持唤醒的话,就调用
mWakeLock.acquire();

//恢复正常睡眠
mWakeLock.release();

二、操作节点

1)一个sysfs文件:/sys/power/wake_lock,用户程序向文件写入一个字符串,即可创建一个wakelock,该字符串就是wakelock的名字。该wakelock可以阻止系统进入低功耗模式。

2)一个sysfs文件::/sys/power/wake_unlock,用户程序向文件写入相同的字符串,即可注销一个wakelock。

3)当系统中所有的wakelock都注销后,系统可以自动进入低功耗状态。

4)向内核其它driver也提供了wakelock的创建和注销接口,允许driver创建wakelock以阻止睡眠、注销wakelock以允许睡眠。

具体操作如下:

在adb shell端,往/sys/power/wake_lock写入一个字符串
一直保持唤醒
echo awake > /sys/power/wake_lock
关闭一直唤醒
echo awake > /sys/power/wake_unlock
备注:awake可以是任意字符串

相关文章

网友评论

      本文标题:Android wakelocks

      本文链接:https://www.haomeiwen.com/subject/ylykwltx.html