Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Android上杀死整个应用程序?_Java_Android_Process_Kill Process - Fatal编程技术网

Java 如何在Android上杀死整个应用程序?

Java 如何在Android上杀死整个应用程序?,java,android,process,kill-process,Java,Android,Process,Kill Process,可能重复: 我正在寻找一种方法,在我的应用程序崩溃时杀死整个应用程序(例如关闭进程)。我之所以想这样做,是因为我的很多运行时数据都存储在一个静态类中,所以当应用程序崩溃时,这个类就会被杀死 我已经看到了关于Android哲学的相关问题(例如,关于不杀掉应用程序等),但现在我只需要杀掉我的应用程序。我该怎么做 我的应用程序有多个活动,我尝试了以下操作。它所做的只是恢复以前的活动 System.exit(0) android.os.Process.killProcess(android.os.

可能重复:

我正在寻找一种方法,在我的应用程序崩溃时杀死整个应用程序(例如关闭进程)。我之所以想这样做,是因为我的很多运行时数据都存储在一个静态类中,所以当应用程序崩溃时,这个类就会被杀死

我已经看到了关于Android哲学的相关问题(例如,关于不杀掉应用程序等),但现在我只需要杀掉我的应用程序。我该怎么做

我的应用程序有多个活动,我尝试了以下操作。它所做的只是恢复以前的活动

System.exit(0)

android.os.Process.killProcess(android.os.Process.myPid())


归功于@Thirumal也有可能重复

AFAIK android哲学不允许从内存中删除整个应用程序。android可能会决定将你的应用程序保留在内存中,以便后续更快地访问,也可能会决定刷新它。您必须处理单个组件,如活动、服务。在适当的时候关闭它们中的每一个,你不应该有任何问题。当不需要静态变量时,将其设为null

我也试过了,但它也只杀死了当前的活动并恢复了以前的活动。对不起,我刚才忘了提。我将编辑我的问题。
 ActivityManager servMng
 servMng = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
 servMng.killBackgroundProcesses(<my package name>);
android.os.Process.sendSignal(android.os.Process.myPid(),
android.os.Process.SIGNAL_KILL);
android.os.Process.killProcess(android.os.Process.myPid());