Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.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
Android 以编程方式终止另一个进程/应用程序_Android - Fatal编程技术网

Android 以编程方式终止另一个进程/应用程序

Android 以编程方式终止另一个进程/应用程序,android,Android,我不想讨论用户是否可以终止进程,是否应该这样做 我只想知道几乎每个安卓玩家的手机都有一个“高级任务杀手”,它会杀死一个进程,或者强制关闭(在设置中)选项是如何正常工作的。我尝试了许多方法来终止进程,但都没有结果。但是当我看到这些“高级任务杀手””时,我不知道我这边出了什么问题。试试: 正如方法名称所暗示的那样,您只能使用这种方法终止自己的进程。假设您已按A->B->C->D的顺序启动了活动,其中A作为主活动和启动器活动 您甚至不能通过在D活动中调用process.KillProcess(intp

我不想讨论用户是否可以终止进程,是否应该这样做

我只想知道几乎每个安卓玩家的手机都有一个“高级任务杀手”,它会杀死一个进程,或者
强制关闭(在设置中)选项是如何正常工作的。我尝试了许多方法来终止进程,但都没有结果。但是当我看到这些“
高级任务杀手”
”时,我不知道我这边出了什么问题。

试试:


正如方法名称所暗示的那样,您只能使用这种方法终止自己的进程。

假设您已按A->B->C->D的顺序启动了活动,其中A作为主活动和启动器活动

您甚至不能通过在D活动中调用
process.KillProcess(intpid)
方法来终止应用程序的进程。您需要终止每个活动D-C-B-A(以相反的顺序)来终止进程


因此,杀死其他应用程序进程是不可能的。

您可以使用以下方法:

请注意,您的应用程序需要拥有该权限。因此,在AndroidManifest.xml中,您需要包括:

<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />


See:@anothem:我看到了那篇帖子,找到了Process.sendSignal(pid,Process.SIGNAL\u KILL);给出了一个无法解决的错误。您能显示准确的错误和堆栈跟踪吗?Process.SIGNAL\u KILL无法解决,这是一个编译时错误(eclipse),我使用的是API级别8。从API级别1开始,所有这些都在android.os中。请看:也许,试着将其写为:android.os.Process.SIGNAL\u killtrusted使用它。没有帮助。Process.killProcess函数只允许我终止自己的进程,而不是其他任何错误。它只是不起作用,只能用这种方法终止自己的进程。事实上,这并不是说你必须尝试完成()。这不会终止进程。您可以在“设置->运行”选项卡中检查。您的应用程序仍保留在后台“因此终止其他应用程序进程是不可能的”这就是我的观点。那么“高级任务杀手”是如何工作的?这完全是不真实的。你可以杀死你拥有的任何进程,但是Android可能会对此感到惊讶,因此可能会决定它应该开始替换被杀死的进程。它确实有效,在后台进程上有没有办法杀死其他后台进程(你可以在设置中从UI停止)?在我的情况下,它不起作用。我也在清单中添加了权限。
    ActivityManager am = (ActivityManager) getSystemService(Activity.ACTIVITY_SERVICE);
    am.killBackgroundProcesses(packageName);
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />