Android在进入睡眠状态时会更改活动

时间:2014-05-05 15:14:51

标签: android

我正在维护一个控制工业流程的Android应用程序。它有一个主要的活动/屏幕,允许您选择各种工业任务,每个任务都有自己的活动/屏幕。

问题 - 如果用户处于这些其他活动之一并且机器人进入睡眠状态(比如因为工作人员休息或去吃午餐),当它再次醒来时它会回到主活动中!

这很难调试,因为调试它我必须连接到USB,当它连接到USB时它不会进入睡眠状态。

1。哪些活动生命周期事件与其进入睡眠状态相关联?它实际上意味着什么才能入睡 - 显示器熄灭但显然其他东西也在发生,因为当它醒来时它处于不同的活动中。

2. 有没有办法可以让它进入睡眠模式,即使连接到USB也可以设置断点并正确调试?

详细说明:

  • 三星Galaxy Player(基本上没有手机的三星手机)运行2.35。
  • 进入睡眠状态时打开的活动使用默认的标准启动模式。

1 个答案:

答案 0 :(得分:1)

当android进入休眠状态时,最顶层的活动会收到onPause,但它仍然是活动堆栈中最顶层的活动,因此它将收到onResume并将在设备醒来。

当设备唤醒时你看到你的主要活动的原因是onPause中应该有一些代码强制在onPause之后完成最高活动(类似地可能有一些设置。例如,将noHistory设置为true在AndroidManifest.xml中,一个活动强制活动在收到onPause时自行关闭,所以当你返回时,你会看到主要活动在上面。)