unix TOP命令不适用于PID

时间:2014-10-05 12:20:24

标签: android unix

所以我正在为android写作。我的应用程序需要有关应用程序内存和CPU使用情况的数据 很快我发现没有Android功能可以帮助我,所以我可以使用“TOP”命令。 我的问题是我需要提供某些PID,但命令不起作用。 当我读到这些行时,我得到了null。 我检查了语法,似乎都是合法的。 有什么想法吗?

代码:

            for(int j=0; j<20;j++)
            {
                pids+=PIDs[j].toString()+",";
            }
            pids=pids.substring(0,pids.length()-1);
            String command = "top -m 20 -p "+ pids +" -n 1";
            Process p = Runtime.getRuntime().exec(command);
            BufferedReader reader = new BufferedReader(new InputStreamReader(
                    p.getInputStream()));
            String line;
            int i = 7;
            do {
                line = reader.readLine();
                i--;
            }while(i>0);

            while (line != null)
            {
                list.add(line);
                line = reader.readLine();
            }
            p.waitFor(); 

1 个答案:

答案 0 :(得分:0)

查看AOSP的最新源代码,遗憾的是不支持-p命令。如果你直接在android shell中调用你的命令,你应该得到一个无效的参数“-p”错误。