Android 如何获取当前状态下所有持有wakelock的进程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 如何获取当前状态下所有持有wakelock的进程相关的知识,希望对你有一定的参考价值。

想做一个应用,获取某个时刻所有持有 wakelock而不让系统睡眠的应用,不知道有什么api或者接口能够获得吗?有没有一个列表一样的东西,直接可以获取wakelock列表的进程

在PowerManagerService.java中,wake列表定义为私有
// Table of all wake locks acquired by applications.
private final ArrayList<WakeLock> mWakeLocks = new ArrayList<WakeLock>();

也没有定义类似getWakeList的输出函数,因此,你所要的接口不存在~追问

那怎么实现类似的功能呢?难道要遍历进程列表,然后判断?

追答

应该是没办法实现这种功能,除非是改平台系统中的接口。

参考技术A 好复杂啊~~

以上是关于Android 如何获取当前状态下所有持有wakelock的进程的主要内容,如果未能解决你的问题,请参考以下文章

如果持有它的应用程序或服务被杀死,Android 操作系统是不是会释放唤醒锁?

Android 使用Wake Lock

Android让屏幕保持常亮的三种方法

android 休眠唤醒机制分析 — wake_lock

前台服务与 PARTIAL_WAKE_LOCK 的关系

如何获取 Android 接近传感器的当前值?