我正在编写一个可以杀死其他运行应用程序的应用程序。为此,我使用以下代码
int pid = process.pid;
android.os.Process.killProcess(pid);
Log.e("killed",process.processName);
我能够显示所有正在运行的应用程序。但是上面两行代码并没有杀死应用程序(com.sample.mango)。此外,我可以在市场上看到几个任务查杀应用程序。
所以我的问题是 - 是否有可能从其他应用程序中删除正在运行的应用程序?
如果是,那么杀人的方法是什么? (为什么上面的代码不起作用)
答案 0 :(得分:1)
Android是否允许这类应用?这不是由操作系统而是第三方应用程序提供的服务。如果我的应用程序被某些第三方应用程序杀死,我会讨厌。
答案 1 :(得分:0)
使用给定的PID终止进程。请注意,尽管此API允许 我们要求基于其PID来杀死任何进程,内核会 仍然对您实际能够使用的PID施加标准限制 要杀了通常,这意味着只有运行调用者的进程 包/应用程序以及该应用程序创建的任何其他进程; 共享一个普通UID的软件包也可以互相杀死 过程
这就是为什么killProcess不起作用。
您应该尝试使用killBackgroundProcesses。不要忘记将KILL_BACKGROUND_PROCESSES
添加到AndroidManifest.xml。
答案 2 :(得分:0)
您也可以尝试sending SIGNAL_KILL到pids。