我创建了一个启动服务的应用程序,它启动一个计时器,在一段时间后触发一个小函数.这在模拟器和Motorola Droid 1上运行得很好,但是当手机进入睡眠模式时,它在Droid X上不起作用.我发现的是,当手机处于睡眠状态时,计时器似乎会暂停.它似乎没有在Droid 1或模拟器上执行此操作.我确定解决方法并不太难,所以我不是要求帮助(一次)我只想要一个解释,以便更好地理解这一点.
我的问题是什么"睡眠模式" 在Android系统上做了什么?什么是停止,什么不停止,等等.睡眠模式我的意思是,当你按下电源按钮,屏幕变黑.究竟发生了什么?任何见解都表示赞赏.
我可以在服务内部使用此代码来延迟调用方法,还是Handler()只能在UI线程内部使用?
在a内部延迟调用方法的最佳方法是service什么?
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
//Do something after 10000ms
socket.emit("CancelTravel");
}
}, 10000);
Run Code Online (Sandbox Code Playgroud)