android执行shell命令(如何让Android系统或Android应用执行shell脚本 第2页)

2026-05-27 09:15:01 :0

android执行shell命令(如何让Android系统或Android应用执行shell脚本 第2页)

大家好,如果您还对android执行shell命令不太了解,没有关系,今天就由本站为大家分享android执行shell命令的知识,包括如何让Android系统或Android应用执行shell脚本 第2页的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

本文目录

如何让Android系统或Android应用执行shell脚本 第2页

android系统执行shell脚本,需要首先确认用户具有修改shell的权限,使用 process来执行指令,如下代码:
public void execShell(String cmd){
try{
//权限设置
Process p = Runtime.getRuntime().exec("su"); //开始执行shell脚本
//获取输出流
OutputStream outputStream = p.getOutputStream();
DataOutputStream dataOutputStream=new DataOutputStream(outputStream);
//将命令写入
dataOutputStream.writeBytes(cmd);
//提交命令
dataOutputStream.flush();
//关闭流操作
dataOutputStream.close();
outputStream.close();
}
catch(Throwable t)
{
t.printStackTrace();
}
}

Android设备远程管理工具-STF

AirDroid Business是一种移动设备管理(MDM)和企业移动应用程序(EMA)解决方案,它能帮助企业管理设备、应用程序和数据。


使用AirDroid Business,企业管理员可以集中管理所有设备,例如监控设备的状态、远程锁定、擦除设备数据、安装、卸载应用程序和批量分发应用程序。此外,企业管理员可以设置设备策略并监视设备使用情况,以确保设备在符合企业安全标准的情况下进行操作。
另外,AirDroid Business还允许企业创建定制化应用程序,并将它们分发给自己的员工。企业管理员可以自己设计应用程序,应用程序将仅能被员工使用,而无法被外界下载。企业员工可以方便地访问这些应用程序来帮助提高工作效率,并可以随时随地访问企业数据。

除了设备管理和应用程序管理外,AirDroid Business还提供了其他移动企业管理解决方案,例如:


1. 远程支持:管理员可以远程控制设备,从而解决设备上出现的问题或错误。这是一种快速响应客户需求并减少对设备的干预的有效方式。
2. 设备安全:企业管理员可以设置设备策略,以确保设备的安全,并防止有害软件影响企业数据。此外,管理员可以设置远程锁定和擦除设备功能,从而保护企业数据不被泄露。
3. 设备跟踪:企业管理员可以追踪设备的位置和状态,以便在需要时快速响应,从而提高设备的安全性和管理效率。
4. 自动化操作:AirDroid Business允许企业管理员设置自动化操作,从而减少业务流程中的手动工作量。例如,自动化下发更新、应用程序安装、IT支持事件等。
AirDroid Business提供了完整的移动企业管理解决方案,以帮助企业更好地管理移动设备、应用程序和数据。【申请14天免费试用】

android shell command有哪些

Android执行shell命令
一、方法
1. /**
2. * 执行一个shell命令,并返回字符串值
3. *
4. * @param cmd
5. * 命令名称&参数组成的数组(例如:{"/system/bin/cat", "/proc/version"})
6. * @param workdirectory
7. * 命令执行路径(例如:"system/bin/")
8. * @return 执行结果组成的字符串
9. * @throws IOException
10. */
11. public static synchronized String run(String cmd, String workdirectory)
12. throws IOException {
13. StringBuffer result = new StringBuffer();
14. try {
15. // 创建操作系统进程(也可以由Runtime.exec()启动)
16. // Runtime runtime = Runtime.getRuntime();
17. // Process proc = runtime.exec(cmd);
18. // InputStream inputstream = proc.getInputStream();
19. ProcessBuilder builder = new ProcessBuilder(cmd);
20.
21. InputStream in = null;
22. // 设置一个路径(绝对路径了就不一定需要)
23. if (workdirectory != null) {
24. // 设置工作目录(同上)
25. builder.directory(new File(workdirectory));
26. // 合并标准错误和标准输出
27. builder.redirectErrorStream(true);
28. // 启动一个新进程
29. Process process = builder.start();
30.
31. // 读取进程标准输出流
32. in = process.getInputStream();
33. byte;
34. while (in.read(re) != -1) {
35. result = result.append(new String(re));
36. }
37. }
38. // 关闭输入流
39. if (in != null) {
40. in.close();
41. }
42. } catch (Exception ex) {
43. ex.printStackTrace();
44. }
45. return result.toString();
46. }
二、用途
执行Linux下的top、ps等命令,这些命令你也通过adb可以执行查看效果。
1)top命令如下:
1. adb shell
2. $ top -h
3. top -h
4. Usage: top
5. -m num Maximum number of processes to display. // 最多显示多少个进程
6. -n num Updates to show before exiting. // 刷新次数
7. -d num Seconds to wait between updates. // 刷新间隔时间(默认5秒)
8. -s col Column to sort by 《cpu,vss,rss,thr》 // 按哪列排序
9. -t Show threads instead of processes. // 显示线程信息而不是进程
10. -h Display this help screen. // 显示帮助文档
11. $ top -n 1
12. top -n 1
就不把执行效果放上来了,总之结果表述如下:
1. User 35%, System 13%, IOW 0%, IRQ 0% // CPU占用率
2. User 109 + Nice 0 + Sys 40 + Idle 156 + IOW 0 + IRQ 0 + SIRQ 1 = 306 // CPU使用情况
3.
4. PID CPU% S #THR VSS RSS PCY UID Name // 进程属性
5. xx xx% x xx xx xx xx xx xx
6.
7. CPU占用率:
8. User 用户进程
9. System 系统进程
10. IOW IO等待时间
11. IRQ 硬中断时间
12.
13. CPU使用情况(指一个最小时间片内所占时间,单位jiffies。或者指所占进程数):
14. User 处于用户态的运行时间,不包含优先值为负进程
15. Nice 优先值为负的进程所占用的CPU时间
16. Sys 处于核心态的运行时间
17. Idle 除IO等待时间以外的其它等待时间
18. IOW IO等待时间
19. IRQ 硬中断时间
20. SIRQ 软中断时间
21.
22. 进程属性:
23. PID 进程在系统中的ID
24. CPU% 当前瞬时所以使用CPU占用率
25. S 进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。
26. #THR 程序当前所用的线程数
27. VSS Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
28. RSS Resident Set Size 实际使用物理内存(包含共享库占用的内存)
29. PCY OOXX,不知道什么东东
30. UID 运行当前进程的用户id
31. Name 程序名称android.process.media
32.
33. // ps:内存占用大小有如下规律:VSS 》= RSS 》= PSS 》= USS
34. // PSS Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
35. // USS Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
在附件Android系统-》android top.txt文件内,自个总结的。
2)执行代码
1. // top命令
2. public static final String TOP = { "/system/bin/top", "-n", "1" };
3.
4. // 现在执行top -n 1,我们只需要第二行(用第二行求得CPU占用率,精确数据)
5. // 第一行:User 35%, System 13%, IOW 0%, IRQ 0% // CPU占用率
6. // 第二行:User 109 + Nice 0 + Sys 40 + Idle 156 + IOW 0 + IRQ 0 + SIRQ 1 = 306
7. // // CPU使用情况
8. public static synchronized String run(String cmd) {
9. String line = "";
10. InputStream is = null;
11. try {
12. Runtime runtime = Runtime.getRuntime();
13. Process proc = runtime.exec(cmd);
14. is = proc.getInputStream();
15.
16. // 换成BufferedReader
17. BufferedReader buf = new BufferedReader(new InputStreamReader(is));
18. do {
19. line = buf.readLine();
20. // 前面有几个空行
21. if (line.startsWith("User")) {
22. // 读到第一行时,我们再读取下一行
23. line = buf.readLine();
24. break;
25. }
26. } while (true);
27.
28. if (is != null) {
29. buf.close();
30. is.close();
31. }
32. } catch (IOException e) {
33. e.printStackTrace();
34. }
35. return line;
36. }
37.
38. // 获取指定应用的top命令获取的信息
39. // PID CPU% S #THR VSS RSS PCY UID Name // 进程属性
40. // 如果当前应用不在运行则返回null
41. public static synchronized String run(String cmd, String pkgName) {
42. String line = null;
43. InputStream is = null;
44. try {
45. Runtime runtime = Runtime.getRuntime();
46. Process proc = runtime.exec(cmd);
47. is = proc.getInputStream();
48.
49. // 换成BufferedReader
50. BufferedReader buf = new BufferedReader(new InputStreamReader(is));
51. do {
52. line = buf.readLine();
53. // 读取到相应pkgName跳出循环(或者未找到)
54. if (null == line || line.endsWith(pkgName)) {
55. break;
56. }
57. } while (true);
58.
59. if (is != null) {
60. buf.close();
61. is.close();
62. }
63. } catch (IOException e) {
64. e.printStackTrace();
65. }
66. return line;
67. }
--------------------------------------------
PID:进程在系统中的ID
CPU% - 当前瞬时所以使用CPU占用率
#THR - 程序当前所用的线程数
UID - 运行当前进程的用户id
Name - 程序名称org.xmpp.app
VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
一般来说内存占用大小有如下规律:VSS 》= RSS 》= PSS 》= USS

安卓设备中在执行bat脚本时abd shell自动输入密码并执行命令怎么写

可以使用 echo 命令和管道符 | 将密码输入到 adb shell 的命令中。假设你的密码为 mypassword,需要执行的命令为 mycommand,那么可以这样写:
echo mypassword | adb shell mycomman
在上面的命令中,echo mypassword 将密码输出到标准输出流,然后通过管道符 | 将标准输出流连接到 adb shell mycommand 命令的标准输入流中,这样就实现了自动输入密码并执行命令的效果。

关于android执行shell命令到此分享完毕,希望能帮助到您。

android执行shell命令(如何让Android系统或Android应用执行shell脚本 第2页)

本文编辑:admin

更多文章:


指针函数的返回值(指针作为函数的返回值)

指针函数的返回值(指针作为函数的返回值)

大家好,指针函数的返回值相信很多的网友都不是很明白,包括指针作为函数的返回值也是一样,不过没有关系,接下来就来为大家分享关于指针函数的返回值和指针作为函数的返回值的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!本文目录指

2026年4月21日 05:45

myeclipse激活了还是要激活(myeclipse为什么要激活)

myeclipse激活了还是要激活(myeclipse为什么要激活)

各位老铁们好,相信很多人对myeclipse激活了还是要激活都不是特别的了解,因此呢,今天就来为大家分享下关于myeclipse激活了还是要激活以及myeclipse为什么要激活的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看

2026年7月3日 22:30

Jam在英语中到底有多少意思?Dr.jame’s work is of enormous value to the community. 先说下,to是什么意思,作用是什么,

Jam在英语中到底有多少意思?Dr.jame’s work is of enormous value to the community. 先说下,to是什么意思,作用是什么,

本篇文章给大家谈谈jam,以及Jam在英语中到底有多少意思对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录Jam在英语中到底有多少意思Dr.

2025年11月19日 01:00

phpcms 自定义字段标签模型(phpcms建议PHPCMS在评论功能上进行扩展,实现评论自定义字段)

phpcms 自定义字段标签模型(phpcms建议PHPCMS在评论功能上进行扩展,实现评论自定义字段)

“phpcms 自定义字段标签模型”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看phpcms 自定义字段标签模型(phpcms建议PHPCMS在评论功能上进行扩展,实现评论自定义字段)!本文目录phpcms建议PHPCMS

2025年10月13日 22:30

车后面有transformers(小黄蜂雪佛兰是什么车)

车后面有transformers(小黄蜂雪佛兰是什么车)

本篇文章给大家谈谈车后面有transformers,以及小黄蜂雪佛兰是什么车对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录小黄蜂雪佛兰是什

2026年3月18日 10:45

软件开发八个阶段(软件的生命周期--三个时期,八个阶段)

软件开发八个阶段(软件的生命周期--三个时期,八个阶段)

大家好,关于软件开发八个阶段很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于软件的生命周期--三个时期,八个阶段的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2026年3月16日 10:45

android根据源码解决问题(如何解决android ndk r8c 老是重新编译源代码的问题)

android根据源码解决问题(如何解决android ndk r8c 老是重新编译源代码的问题)

大家好,android根据源码解决问题相信很多的网友都不是很明白,包括如何解决android ndk r8c 老是重新编译源代码的问题也是一样,不过没有关系,接下来就来为大家分享关于android根据源码解决问题和如何解决android n

2026年3月30日 00:30

selectorgadget下载(bootntrselector加载不成功)

selectorgadget下载(bootntrselector加载不成功)

大家好,关于selectorgadget下载很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于bootntrselector加载不成功的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,

2025年9月21日 13:30

如何输入string类型字符串(博图画面中string类型怎么输入)

如何输入string类型字符串(博图画面中string类型怎么输入)

大家好,如果您还对如何输入string类型字符串不太了解,没有关系,今天就由本站为大家分享如何输入string类型字符串的知识,包括博图画面中string类型怎么输入的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录

2026年5月6日 23:15

设计图的网站(学设计的,找图片素材的网站有哪些)

设计图的网站(学设计的,找图片素材的网站有哪些)

今天给各位分享学设计的,找图片素材的网站有哪些的知识,其中也会对学设计的,找图片素材的网站有哪些进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录学设计的,找图片素材的网站有哪些免费出装修设计图免费装修设计的网站

2026年9月3日 06:00

sw哪个版本好用?switch怎么实现成绩的范围

sw哪个版本好用?switch怎么实现成绩的范围

今天给各位分享sw哪个版本好用的知识,其中也会对sw哪个版本好用进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录sw哪个版本好用switch怎么实现成绩的范围用switch语句表示范围matlab中switch

2025年6月19日 12:15

手机网页游戏不用登录(手机上免登录国外游戏网址是什么)

手机网页游戏不用登录(手机上免登录国外游戏网址是什么)

“手机网页游戏不用登录”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看手机网页游戏不用登录(手机上免登录国外游戏网址是什么)!本文目录手机上免登录国外游戏网址是什么无需登录无需网络的游戏手机上免登录国外游戏网址是什么Craz

2026年3月11日 04:30

format函数千位分隔符(15、pandas的设置数字格式,小数位数、百分号、千位分隔符)

format函数千位分隔符(15、pandas的设置数字格式,小数位数、百分号、千位分隔符)

大家好,format函数千位分隔符相信很多的网友都不是很明白,包括15、pandas的设置数字格式,小数位数、百分号、千位分隔符也是一样,不过没有关系,接下来就来为大家分享关于format函数千位分隔符和15、pandas的设置数字格式,小

2026年4月6日 17:30

foranouting什么意思(let’s go for an outing 句中for是什么词for an outing中为什么有an修饰outing)

foranouting什么意思(let’s go for an outing 句中for是什么词for an outing中为什么有an修饰outing)

今天给各位分享let’s go for an outing 句中for是什么词for an outing中为什么有an修饰outing的知识,其中也会对let’s go for an outing 句中for是什么词for an outin

2026年3月12日 08:00

cur是哪个国家的缩写?curls是什么意思

cur是哪个国家的缩写?curls是什么意思

本篇文章给大家谈谈cur,以及cur是哪个国家的缩写对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录cur是哪个国家的缩写curls是什么意

2025年8月8日 14:45

用其他用户找不到java的变量(JAVA的环境变量)

用其他用户找不到java的变量(JAVA的环境变量)

今天给各位分享JAVA的环境变量的知识,其中也会对JAVA的环境变量进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录JAVA的环境变量Java为什么从类中没法访问主方法中定义的变量使用root用户配置的jdk,

2025年9月24日 08:00

java程序的优点有哪些(JAVA语言开发软件有什么优势)

java程序的优点有哪些(JAVA语言开发软件有什么优势)

大家好,如果您还对java程序的优点有哪些不太了解,没有关系,今天就由本站为大家分享java程序的优点有哪些的知识,包括JAVA语言开发软件有什么优势的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录JAVA语言开发

2026年7月31日 18:15

c++多线程并发(C++的多线程里的事件是怎样定义的,事件和线程有啥联系和区别)

c++多线程并发(C++的多线程里的事件是怎样定义的,事件和线程有啥联系和区别)

大家好,今天小编来为大家解答以下的问题,关于c++多线程并发,C++的多线程里的事件是怎样定义的,事件和线程有啥联系和区别这个很多人还不知道,现在让我们一起来看看吧!本文目录C++的多线程里的事件是怎样定义的,事件和线程有啥联系和区别c++

2026年9月20日 11:45

停止天然砂出口台湾(急求中国2010年10月11日起禁止出口的货物目录)

停止天然砂出口台湾(急求中国2010年10月11日起禁止出口的货物目录)

本篇文章给大家谈谈停止天然砂出口台湾,以及急求中国2010年10月11日起禁止出口的货物目录对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录

2025年6月19日 16:00

免费的翻译器(哪种翻译软件是免费的)

免费的翻译器(哪种翻译软件是免费的)

“免费的翻译器”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看免费的翻译器(哪种翻译软件是免费的)!本文目录哪种翻译软件是免费的不收费的翻译软件哪些免费翻译软件好用哪种翻译软件是免费的翻译软件是免费的有以下翻译软件目前市面上

2026年4月3日 13:00

近期文章

本站热文

electronics软件(labcenter electronics是什么软件)
2025-05-22 23:45:02 浏览:134
博客是微博吗(博客是微博吗)
2025-05-22 22:45:01 浏览:111
diversity and distribution(悬赏英语短文)
2025-05-23 16:15:02 浏览:107
ios软件开发前景(iOS就业前景怎么样)
2025-05-22 23:00:01 浏览:102
next month(有The next month这个单词吗,和 next month有什么区别)
2025-05-23 02:30:01 浏览:102
patron(patron是什么意思)
2025-05-23 10:30:02 浏览:95
标签列表

热门搜索