android - Doze Mode 和 Idle 是一回事吗?

标签 android android-studio adb android-doze

我正在使用 Android Studio 并尝试在使用打盹模式时测试我的应用。我已经阅读了一些链接(包括 the android documentation about doze mode )。但是,我感到困惑。 “IDLE”和“Doze mode”之间有什么区别吗?在我看来,每当我读到它们时,它们都被视为相同的东西。

另外,我期待从Doze Mode唤醒后,onCreateView()方法会在Activity中再次被调用。那是对的吗?我尝试使用 ADB 强制打瞌睡模式并稍后唤醒它,启动应用程序,转到我要测试的 Activity ,然后使用:

adb shell dumpsys 电池拔出

adb shell dumpsys deviceidle force-idle

adb shell 输入keyevent KEYCODE_WAKEUP

但是,调用了 onResume() 方法。如果我的预期是错误的,Doze mode 和 Idle 都应该在被唤醒后调用 onResume() 吗?我对这两个概念有点困惑。有谁能帮帮我吗?

最佳答案

Doze 模式结束后不会再次调用 OnCreateView。 OnCreate 只会在您的应用程序因某种原因在打瞌睡模式期间被终止时才会被调用。调用 On Resume 是因为您在该屏幕不在前台后返回到 Activity 或 fragment 。我建议您阅读有关 Android 生命周期的更多信息,以及 Oncreate 与 Resume 之间的区别 onCreate vs. onResume/onRestart bevhaviour regarding member variables

关于android - Doze Mode 和 Idle 是一回事吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64977686/

相关文章:

java - GridView 不显示从 Json 检索的数据

Android 打包程序 : [main] java. util.zip.ZipException : duplicate entry: classes. dex

android - eclipse 无法在设备上安装 apk, "ActivityManager:/sbin/sh: am: not found"

java - 在 RecyclerView Adapter 中显示 sharedpreference

android - 在后台检查 Play 商店以确定是否可以在设备上下载应用程序

android - 如何在 Spinner for android 中对齐文本?

android - 使用 "adb shell am instrument"时如何检索测试结果

groovy - 如何使用Gradle从txt文件中提取键值对

android - ADB命令行启动 Activity 权限

通过模拟器控制台或 ADB 更改 Android 模拟器方向