Java 无法执行';cd&x27;在壳牌

Java 无法执行';cd&x27;在壳牌,java,android,shell,Java,Android,Shell,我试图在ADB SHELL中执行cd/sys/class/power\u supply/battery&&cat uevent命令,并从信息中编织一个ArrayList。但是,它无法工作,返回一个空的。虽然当我执行ls替换cd/sys/class/power\u supply/battery&&cat uevent时,ArrayList会被填充。尽管使用终端应用程序可以轻松访问路径! 怎么了 ArrayList<String> info = new ArrayList<>

我试图在
ADB SHELL
中执行
cd/sys/class/power\u supply/battery&&cat uevent
命令,并从信息中编织一个
ArrayList
。但是,它无法工作,返回一个空的。虽然当我执行
ls
替换
cd/sys/class/power\u supply/battery&&cat uevent
时,
ArrayList
会被填充。尽管使用
终端
应用程序可以轻松访问路径! 怎么了

ArrayList<String> info = new ArrayList<>();

    try {
        Process process = Runtime.getRuntime().exec("adb shell");
        process.waitFor();
        process = Runtime.getRuntime().exec("cd /sys/class/power_supply/battery && cat uevent");
        BufferedReader buf = new BufferedReader(new InputStreamReader(process.getInputStream()));
        String line;
        while ((line=buf.readLine())!=null) {
            info.add(line);
        }
    } catch (Exception e) {

    }

    Log.i("INFORMATION",info.toString());
}
ArrayList info=new ArrayList();
试一试{
Process Process=Runtime.getRuntime().exec(“adb shell”);
process.waitFor();
process=Runtime.getRuntime().exec(“cd/sys/class/power_supply/battery&&cat uevent”);
BufferedReader buf=新的BufferedReader(新的InputStreamReader(process.getInputStream());
弦线;
而((line=buf.readLine())!=null){
信息添加(行);
}
}捕获(例外e){
}
Log.i(“信息”,info.toString());
}

为什么需要cd?您只需执行
cat/sys/class/power\u supply/battery/uevent