Java tutorial
//package com.java2s; import android.util.Log; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static int getCpuUsageStatisticINT() { int itemp = 0; int[] intsTemp = getCpuUsageStatistic(); for (int i = 0; i < intsTemp.length; i++) { itemp += intsTemp[i]; } return itemp; } public static int[] getCpuUsageStatistic() { String tempString = executeTop(); tempString = tempString.replaceAll(",", ""); tempString = tempString.replaceAll("User", ""); tempString = tempString.replaceAll("System", ""); tempString = tempString.replaceAll("IOW", ""); tempString = tempString.replaceAll("IRQ", ""); tempString = tempString.replaceAll("%", ""); for (int i = 0; i < 10; i++) { tempString = tempString.replaceAll(" ", " "); } tempString = tempString.trim(); String[] myString = tempString.split(" "); int[] cpuUsageAsInt = new int[myString.length]; for (int i = 0; i < myString.length; i++) { myString[i] = myString[i].trim(); cpuUsageAsInt[i] = Integer.parseInt(myString[i]); } return cpuUsageAsInt; } private static String executeTop() { Process p = null; BufferedReader in = null; String returnString = null; try { p = Runtime.getRuntime().exec("top -n 1"); in = new BufferedReader(new InputStreamReader(p.getInputStream())); while (returnString == null || returnString.contentEquals("")) { returnString = in.readLine(); } } catch (IOException e) { Log.e("executeTop", "error in getting first line of top"); e.printStackTrace(); } finally { try { in.close(); p.destroy(); } catch (IOException e) { Log.e("executeTop", "error in closing and destroying top process"); e.printStackTrace(); } } return returnString; } }