2010-10-11 45 views
3

是否可以创建一个应用程序,以在作为后台进程运行时获取网络活动/统计信息?或者只是让一个应用程序监听特定端口上的流量?Android网络统计

感谢 中号

回答

3

它也许碰运气。但是我使用的大多数设备都有/ proc文件系统。您应该能够从/ proc/net /条目中获取所需的统计数据。例如获得netstat:

Process proc = Runtime.getRuntime().exec(new String[] {"cat", "/proc/net/netstat"}); 
BufferedReader reader = new BufferedReader(new InputStreamReader(proc.getInputStream())); 
String line = null; 

while ((line = reader.readLine()) != null) 
{ 
    // parse netstat output here 
} 
+6

有没有必要使用EXEC,刚读从Java – 2011-02-25 21:49:25

+0

我应该放在那里解析数据文件?例如,如何检查总下载和上传速度(全局和/或特定应用程序)? – 2016-09-01 13:55:38

-1

不需要运行“cat/proc/net/netstat”命令。取而代之的是更简单的方法就可以解决问题

Process proc = Runtime.getRuntime().exec(new String[] {"netstat"}); 
BufferedReader reader = new BufferedReader(new InputStreamReader(proc.getInputStream())); 
String line = null; 
while ((line = reader.readLine()) != null) { 
// parse netstat output here 
} 
+0

,它是如何更简单? – Ankit 2015-07-03 07:12:43