首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何查找代表哪个应用程序持有部分唤醒的AlarmManager服务

如何查找代表哪个应用程序持有部分唤醒的AlarmManager服务
EN

Stack Overflow用户
提问于 2015-08-24 18:13:22
回答 2查看 278关注 0票数 0

我可以观察到我的设备不会休眠,因为闹钟持有部分唤醒锁,但我不知道如何找到代表哪个闹钟持有唤醒锁的应用程序。

EN

回答 2

Stack Overflow用户

发布于 2015-08-24 18:54:46

AlarmManager提供对系统报警服务的访问。它们允许您安排应用程序在将来的某个时候运行。当警报响起时,系统将广播已为其注册的意图,如果目标应用程序尚未运行,则自动启动目标应用程序。设备处于休眠状态时会保留已注册的告警(如果设备在此期间关闭,还可以选择唤醒设备),但如果设备关闭并重新启动,则会将其清除。只要报警接收器的onReceive()方法正在执行,报警管理器就会保持一个CPU唤醒锁。这可以保证电话在您处理完广播之前不会休眠。一旦onReceive()返回,报警管理器就会释放此唤醒锁定。这意味着在某些情况下,只要onReceive()方法完成,电话就会休眠。更多细节

https://github.com/asksven/BetterBatteryStats-Knowledge-Base/wiki/AlarmManager

票数 1
EN

Stack Overflow用户

发布于 2015-08-24 19:27:27

你也可以看看battery-historian。这是一个非常有用的工具,用于查找未释放的wakelock和记录电池历史记录。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32179764

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档