private long parserNumber(String line) throws Exception { long ret=0; String[] delim = line.split(" "); if(delim.length >= 1){ ret = Long.parseLong(delim[0]); } return ret; } public long syncFetchReceivedBytes() { // TODO Auto-generated method stub ProcessBuilder cmd; long readBytes=0; BufferedReader rd = null; try { String[] args = { "/system/bin/cat", "/proc/net/dev" }; cmd = new ProcessBuilder(args); Process process = cmd.start(); rd = new BufferedReader(new InputStreamReader( process.getInputStream())); String line; int linecount = 0; while ((line = rd.readLine()) != null) { linecount++; if(line.contains("lan0")||line.contains("eth0")){ String[] delim = line.split(":"); if(delim.length>=2){ readBytes=parserNumber(delim[1].trim()); break; } } } rd.close(); } catch (Exception ex) { ex.printStackTrace(); } finally { if (rd != null) { try { rd.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } return readBytes; }
long curReadBytes=syncFetchReceivedBytes(); String strSpeed=(curReadBytes-lastReadBytes)/1024 kbps lastReadBytes = curReadBytes;
This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)