【问题标题】:Runtime.getRuntime().exec("kill -9 "+ PID ) not workingRuntime.getRuntime().exec("kill -9 "+ PID ) 不工作
【发布时间】:2014-11-26 16:45:37
【问题描述】:

我不知道为什么 Runtime.getRuntime().exec("kill -9"+PID) 不起作用,但是使用 adb.exe shell 可以完美运行...!

OnClickListener killButtonListner = new View.OnClickListener() {
        public void onClick(View v) {
            try {
                Process ps = Runtime.getRuntime().exec("kill -9 " + PID);
                Toast.makeText(getBaseContext(),"Process killed" , Toast.LENGTH_SHORT).show();
            } catch (IOException e) {
                         Toast.makeText(getBaseContext(),e.getMessage().toString(),Toast.LENGTH_SHORT).show();
            }
        }
    };
    killButton.setOnClickListener(killButtonListner);
}

【问题讨论】:

  • 运行应用程序的用户是否有“终止”此进程的许可?
  • 是的:
  • 多么糟糕的做法!它甚至比使用system.exit(0); stackoverflow.com/questions/18292016/…更糟糕
  • 请看我的代码!

标签: android eclipse


【解决方案1】:

你为什么不使用:

Process.killProcess(int pid)

将其保留为 Android 代码,而不进行脱壳?这样会更可靠。

【讨论】:

  • 我试了一下,还是不行!好吧,在我的应用程序中,我得到了所有 PPID 等于 ZYGOTE PID 的进程。我将它们添加到 ListView 中,这样我就可以单击要杀死的进程。下面是我的代码
猜你喜欢
  • 1970-01-01
  • 2016-05-02
  • 1970-01-01
  • 1970-01-01
  • 2018-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多