gpt4 book ai didi

java - 通过 pid 在 Android 上终止进程

转载 作者:太空宇宙 更新时间:2023-11-04 11:23:04 24 4
gpt4 key购买 nike

我发现了一些关于stackoverflow的类似问题,但我没有找到一个适用于我的情况。

到目前为止,我尝试过:

    Runtime.getRuntime().exec(new String[]{"su","-c","kill -9 "+pid});
//am.killBackgroundProcesses(pkgName);
//android.os.Process.killProcess(pid);

如果我从 adb 中输入 su -c kill -9 pid,它就成功了!为什么不以编程方式工作?

我是否需要在 AndroidManifest.xml 中添加任何权限

顺便说一句,设备已被 root。

最佳答案

一方面,调用 su 可能不是一个好主意这样。 (pid 的每个变体都可能需要由管理您对 su 的调用的任何应用程序授权)大多数人调用 sh然后写下他们要执行的命令。

<罢工>我立即注意到的错误是您的 -9需要在数组的不同部分。例如:

Runtime.getRuntime().exec(new String[]{"su", "-c", "kill", "-9", ""+pid});

<罢工>

编辑: 实际上,这似乎应该可行。我忘记了 -c 的论点需要是整个命令。

您可以找到一些示例代码 here用于在 Android 上以 root 身份执行命令。

您可以做的另一件事是尝试指定 su 的完整路径和 kill二进制文件。 (这可能是特定于手机的,所以要小心)

编辑 2: 我想知道您是否遇到了 this issue .您使用的是什么版本的 Android?

关于java - 通过 pid 在 Android 上终止进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16744874/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com