【问题标题】:Android: Enumerate all wake locks in the systemAndroid:枚举系统中的所有唤醒锁
【发布时间】:2010-07-02 13:56:46
【问题描述】:

Android 应用程序在我的系统上保持部分唤醒锁定时遇到问题;所以我想写一个应用程序来监视坏应用程序并在它获得一个后不久杀死它的部分唤醒锁。

android.os.PowerManager 用于获取和释放唤醒锁,但我没有看到任何方法可以获取系统中的所有唤醒锁;即使我可以访问它的IPowerManager mService 变量,如果没有与唤醒锁关联的IBinder 对象,该服务也不会释放唤醒锁。

所以我被困住了。我该如何进行?这甚至可能吗?

【问题讨论】:

    标签: android


    【解决方案1】:

    这是不可能的,因为你不能编写一个应用程序来取消另一个应用程序的WakeLocks

    FWIW,您可以使用adb shell dumpsys 了解优秀的WakeLocks 等等。

    【讨论】:

    • 幸运的是,昨天,在对持有唤醒锁的应用程序中的错误进行了更多搜索之后,我找到了一种解决方法来让它停止。不过感谢 dumpsys 技巧,这很酷!
    • 查看唤醒锁的另一种方式是adb shell cat /proc/wakelocks
    猜你喜欢
    • 2020-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-23
    • 2010-11-02
    • 2018-01-16
    • 1970-01-01
    相关资源
    最近更新 更多