В моем приложении есть «Приложение» и несколько видов деятельности. Я хотел бы закрыть приложение через определенное время (например, 3 минуты) после того, как пользователь нажал кнопку «Домой». Я могу завершить процесс «Заявка», но пока мои действия активны, они пытаются начать с последнего состояния.
Thread isOnDisplayThread = new Thread(new Runnable() {
@Override
public void run() {
Timer mTimer = new Timer();
mTimer.schedule(new TimerTask() {
@Override
public void run() {
Log.d(TAG, (isApplicationOnDisplay) ? "Application on display" : "APPLICATION ON BACKGROUND");
if (!isApplicationOnDisplay) {
notOnDisplayTime++;
if (notOnDisplayTime >= 10) {
Process.killProcess(Process.myPid());
}
} else {
notOnDisplayTime = 0;
}
}
}, 0, 1000);
}
});
isOnDisplayThread.run();
P.S. isApplicationOnDisplay
- это статическое логическое значение, контролируемое методами onPause()
и onResume()
каждой операции.
Есть ли способ убить все связанные действия приложения?