导航:首页 > 程序命令 > 安卓如何执行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命令相关的资料

热点内容
md5算法字符串长度 浏览:4
可以二次虚化的云服务器 浏览:779
思科2500编程器固件 浏览:235
php开发桌面应用程序 浏览:904
支付宝app哪里可以加油 浏览:71
路由器ttl刷编程器固件 浏览:719
纵向加密密钥协商状态时间 浏览:850
mc花雨庭服务器有些什么 浏览:809
linux制作网页 浏览:19
xlsx加密忘记了怎么办 浏览:999
app湖北农信怎么解约 浏览:426
在线编程教育项目 浏览:759
电信采购5万台服务器干什么用 浏览:200
腾讯云服务器登录地址 浏览:988
程序员在地铁上写字 浏览:555
解压包未知文件格式怎么办 浏览:577
程序员破坏数据库 浏览:331
sh格式如何编译 浏览:344
虚拟服务器云主机哪个好 浏览:98
单片机端口保护 浏览:948