gpt4 book ai didi

android - 使用不同调度程序时 Android Doze 中的行为

转载 作者:行者123 更新时间:2023-11-30 00:29:02 28 4
gpt4 key购买 nike

我正在尝试针对 DozeAppStandBy 优化我们的应用程序,并已实现测试应用程序以了解系统在使用不同后台调度程序时的行为。

但是,我对使用 AlarmManagerObservable.intervall() 时的行为感到非常困惑。

报警管理器

我已经通过 Activity 注册了一个警报,然后通过 adb 将设备带入了 Doze。系统按预期运行,警报未触发。

Rx-Observable.intervall

我已经通过 Activity 启动了 Service,然后通过 adb 进入 Doze 模式。 服务 不是前台服务。在我看来,系统的行为并不像预期的那样,报价会持续传送到应用程序。

为了确认设备确实处于 Doze 状态,我还使用 adb bugreport 查看了电池统计数据,历史学家告诉我设备处于 Doze 状态 在那个时间跨度内。

是否有任何文档说明不同的调度程序如何在 DozeAppStandBy 中工作?

感谢您的任何建议。

最佳答案

问题似乎是adb保持 CPU 运行(如果设备通过 USB 连接),即使设备被带到 doze通过 adb使用命令

$ adb shell dumpsys battery unplug

$ adb shell input keyevent KEYCODE_POWER

adb shell dumpsys deviceidle step

ScheduledThreadPoolExecutor 调度的间隔计时器(由 rxjava 使用)似乎不受限制 doze模式,但通过 AlarmManager 发出警报做。

关于android - 使用不同调度程序时 Android Doze 中的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44804845/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com