Android上的'netstat'命令是否一般可用?

Sar*_*ran 1 android netstat

我目前使用以下代码获取有关活动网络套接字的一些信息.到目前为止,我已经确认这适用于Nexus 4(Jellybeans),Nexus 5(Jellybeans,KitKat和Lollipop)以及Sony Xperia设备(Jellybeans).

Process process = Runtime.getRuntime().exec("netstat -n");
process.getOutputStream().close();
BufferedReader reader = new BufferedReader(
        new InputStreamReader(process.getInputStream()));

String line;
while ((line = reader.readline()) != null) {
    // Parse line for required info
}

reader.close();
Run Code Online (Sandbox Code Playgroud)

我可以依靠上面的代码在大多数真实的Android设备上正常运行吗?

Hra*_*afn 5

Android shell命令大多数位于设备的/ system/bin文件夹中.Vanilla Android使用包含netstat的FreeBSD工具箱,但我不确定你是否可以100%确定它始终存在,因为OEM有时会附带不同的工具.以下是工具箱中包含的工具图:

FreeBSD工具箱图

您可以查看vanilla Android 的源代码,了解哪些版本附带了什么.但正如我所说,每个制造商随每个设备提供的内容可能存在差异.