我正在寻找一种方法,在一段时间后,当应用程序没有焦点时关闭该应用程序。例如,如果用户打开其他应用程序,则该应用程序应在 5 分钟后退出。我尝试过使用 runnable 并创建线程。但当应用程序在后台时,这些方法似乎不起作用(也许它们暂停了,我不确定)。那么当应用程序没有焦点时如何关闭它呢?
对于那些想知道我想这样做的原因是该应用程序包含一些有关用户的敏感数据的人,因此我想确保在他们不使用它时将其全部清除。
最佳答案
像这样的东西可能会起作用:
Activity 类中的字段:
private Thread t = null;
内部onResume()
:
if(t!=null) {
if(t.isAlive()) {
t.interrupt();
t.join();
}
t=null;
}
内部onPause()
:
t = new Thread() {
public void run() {
try {
sleep(5*60*1000);
// Wipe your valuable data here
System.exit(0);
} catch (InterruptedException e) {
return;
}
}.start();
}
关于java - 在后台运行一段时间后关闭应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32543392/