4

我正在尝试执行 adb shell 命令input keyevent 5以在运行时通过我的应用程序接听电话。

如果我这样做:

Runtime.getRuntime().exec("input keyevent 5");

它似乎没有执行(什么都没有发生)。但是当我这样做时:

Runtime.getRuntime().exec(new String[] {"su", "-c", "input keyevent 5"});

屏幕上的回答按钮上的预期模拟点击发生。哪个好。

然而一个问题是,在某些使用超级用户 root 的设备上,该命令需要一段时间才能获得超级用户权限。它适用于具有 Chainfire 的 SuperSU su 二进制文件的设备。

我的问题是:是否可以在运行时通过 Java 代码在没有 root 的情况下执行此命令?

提前致谢!

4

1 回答 1

2

绝对没有!

那将是一个绝对重大的安全问题,因此您必须扎根。

于 2013-01-11T16:40:42.373 回答