我想通过我的应用程序运行traceroute命令。
我该怎么做呢?
Runtime.getRuntime().exec("traceroute google.com")不起作用。
java.io.IOException:运行exec()时出错。命令: traceroute,-4,跟踪工作目录: null环境: null 11-02 12:51:38.399: E/ google.com (1604):at java.lang.ProcessManager.exec(ProcessManager.java:224)
有没有其他方式像使用NDK或其他方式。
请帮帮我。
发布于 2012-10-31 18:03:05
您不能在Android中使用traceroute命令。
如果要在安装了busybox的根设备中使用它,请使用busybox安装的路径来运行该命令。如果你想在有根的设备中使用它,这个库是很有用的。http://code.google.com/p/roottools/
发布于 2013-05-04 06:27:13
您可以做的另一件事是使用简单的ping命令创建自己的traceroute。Traceroute实质上是发送带有修改后的TTL字段的ping。当ip数据包达到其较低的TTL限制时(在目标服务器之前),服务器会发送一个响应。这些响应是traceroute如何能够找到数据包如何到达其目的地的。
https://stackoverflow.com/questions/13154902
复制相似问题