+-
在android中实现Traceroute功能
这是我第一次提出任何问题,请原谅我的任何错误.

我想实现traceroute功能,如Android Play商店中提供的这些应用程序.

Visual TracertPro

Traceroute

我知道在windows traceroute中输入CMD时,google.com会显示所有使用的中间IP.

现在我试过了.

我尝试使用traceroute命令,但android不支持traceroute只有rooted设备支持它.

Process process =Runtime.getRuntime().exec("traceroute yahoo.com"); BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); int i; char[] buffer = new char[4096]; StringBuffer output = new StringBuffer(); while ((i = reader.read(buffer)) > 0) output.append(buffer, 0, i); reader.close(); Log.d("*************", ""+output);

所以我想实现使用ping命令,但无法取得任何成功.通过使用ping命令,它只提供了google.com的ip,而不是我需要和以上的应用程序显示.

Process process = Runtime.getRuntime().exec("/system/bin/ping -t 1 -c 1 google.com"); BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); int i; char[] buffer = new char[4096]; StringBuffer output = new StringBuffer(); while ((i = reader.read(buffer)) > 0) output.append(buffer, 0, i); reader.close(); Log.d("*************", ""+output);

请指导我如何实现这一目标.一些链接或一些教程将非常有用.

提前感谢你.

最佳答案
busybox实用程序包括traceroute.您可以在设备上运行busybox,而无需通过遵循此 youtube tutorial来管理您的手机.然后您应该能够使用您发布的第一个代码段从您的应用程序中查询traceroute.当然,在调用traceroute时,您需要确保使用正确的路径.
点击查看更多相关文章

转载注明原文:在android中实现Traceroute功能 - 乐贴网