0
我正在使用以下代碼通過android應用程序運行shell腳本。我能夠運行腳本,但只有echo命令正在執行。像netcfg,cat,route,setprop這樣的命令沒有被執行。有沒有我錯過的任何許可或任何其他事情。請告訴我。從Android應用程序運行Shell腳本時的權限問題
public void run() {
// TODO Auto-generated method stub
String path;
path="/system/bin/sh /persist/eth0.sh";
Process p;
try {
p = Runtime.getRuntime().exec(path);
InputStream is = p.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
但是,如果我從終端(adb外殼)運行相同的腳本,它正常運行沒有任何問題。只有當我嘗試通過android應用運行腳本時,許多命令不會被執行。 – Nirmal
以下是命令行參考: https://github.com/jackpal/Android-Terminal-Emulator/wiki/Android-Shell-Command-Reference –
該鏈接講述了可以在shell中使用的命令,因爲我前面提到腳本運行完美,如果通過adb外殼運行,但是當我通過android應用運行時,它會給出問題。 – Nirmal