【发布时间】:2011-07-21 12:52:28
【问题描述】:
我有一个线程正在运行一个活动。我不希望当用户单击主页按钮或例如用户接听电话时线程继续运行。 所以我想暂停线程并在用户重新打开应用程序时恢复它。 我试过这个:
protected void onPause() {
synchronized (thread) {
try {
thread.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
super.onPause();
}
protected void onResume() {
thread.notify();
super.onResume();
}
它停止线程但不恢复它,线程似乎冻结了。
我也尝试过使用已弃用的方法Thread.suspend() 和Thread.resume(),但在这种情况下进入Activity.onPause(),线程不会停止。
有人知道解决办法吗?
【问题讨论】: