導航:首頁 > 程序命令 > 安卓如何執行shell命令

安卓如何執行shell命令

發布時間:2025-03-10 20:27:27

❶ 如何在android裡面執行adb shell命令

ADB介面的作用主要是讓電腦等其它設備控制安卓系統的,所以,稱為「中間橋」;
不是為安卓自已用的,自已可直接執行稱為SHELL,這與ADB無關。
所以安卓java不一定有封裝的ADB類。電腦上有ADB服務程序,埠5037,
它是中間程序,與安卓系統上守護進程(Daemon)通訊。
如果要在自已的手機上應該也能執行adb命令,應該直接跟守護進程
(Daemon)通訊了。網路上可以搜到的方法並不滿意。

樓主用exec執行CMD命令,這已不是ADB介面了,這是系統的SHELL了!!!

自已用socket/tcp直接發命令效果不知怎樣,地址用127.0.0.1, 安卓daemon進程的埠
5555 是奇數開始。

❷ 如何在android程序中執行adb shell命令

android中執行shell命令有兩種方式:

1.直接在代碼中用java提供的Runtime 這個類來執行命令,以下為完整示例代碼。

public void execCommand(String command) throws IOException {

// start the ls command running

//String[] args = new String[]{"sh", "-c", command};

Runtime runtime = Runtime.getRuntime();

Process proc = runtime.exec(command); //這句話就是shell與高級語言間的調用

//如果有參數的話可以用另外一個被重載的exec方法

//實際上這樣執行時啟動了一個子進程,它沒有父進程的控制台

//也就看不到輸出,所以需要用輸出流來得到shell執行後的輸出

InputStream inputstream = proc.getInputStream();

InputStreamReader inputstreamreader = new InputStreamReader(inputstream);

BufferedReader bufferedreader = new BufferedReader(inputstreamreader);

// read the ls output

String line = "";

StringBuilder sb = new StringBuilder(line);

while ((line = bufferedreader.readLine()) != null) {

//System.out.println(line);

sb.append(line);

sb.append(' ');

}

//tv.setText(sb.toString());

//使用exec執行不會等執行成功以後才返回,它會立即返回

//所以在某些情況下是很要命的(比如復制文件的時候)

//使用wairFor()可以等待命令執行完成以後才返回

try {

if (proc.waitFor() != 0) {

System.err.println("exit value = " + proc.exitValue());

}

}

catch (InterruptedException e) {

System.err.println(e);

}

}

}


2.直接安裝shell模擬器,即已經開發好的android應用,啟動後類似windows的dos命令行,可以直接安裝使用,可執行常用的linux命令,應用在附件。



閱讀全文

與安卓如何執行shell命令相關的資料

熱點內容
小米如何加密第三方軟體 瀏覽:232
安卓工程師有什麼證書 瀏覽:788
小米相冊截屏文件夾目錄 瀏覽:552
scum怎麼查看伺服器的ip地址 瀏覽:457
程序員面試要那麼長時間嗎 瀏覽:63
程序員那麼可愛有幾集 瀏覽:721
韓順平java入門到精通下載 瀏覽:880
c語音編譯器蘋果版 瀏覽:915
華為雲伺服器忙 瀏覽:432
9806h命令 瀏覽:726
無錫人怎麼在APP里 瀏覽:810
安卓系統怎麼讓應用不保存緩存 瀏覽:482
高性能web站點pdf 瀏覽:980
scratch飛機大戰編程全程教學 瀏覽:2
java網路編程詳解 瀏覽:694
oppo手機如果應用加密了如何解開 瀏覽:898
q退出命令 瀏覽:758
java變數單例 瀏覽:482
javametainf 瀏覽:967
sys編譯軟體 瀏覽:640