目录
1.安卓命令工具集
2.命令如何使用(举例)
2.1 am命令使用
2.2 dumpsys 命令使用
2.3 wm命令用法
2.4 rm命令的用法
2.5 logcat 命令的用法
2.6 cat 命令的用法
3.个人如何学习
3.1 推荐学习方法一
3.2 方法二
1.安卓命令工具集
安卓支持的命令行工具在如下位置:
上述7步简单操作,其实我们就直接找到了安卓提供用户可用的命令工具集(这些命令集合可以理解为apk, 通过使用这些命令,不同模块可以依据特定apk来获取系统运行的各种状态信息)。有的解释为:这个目录下的文件都是系统的本地程序(可执行的命令工具),从bin文件夹名称可以看出是binary二进制的程序,里面主要是Linux系统自带的组件。具体包含的常用命令工具列表如下:
知道了以上命令工具的集合位置,最重要的就是如何使用这些工具,方便我们获取各种系统信息,以助力我们日常的测试工作。我标出了部分我用过的命令工具,其实不难看出,我们日常使用的命令本身就是上述工具的使用或者组合使用,只不过很多同学没有感觉到而已。
2.命令如何使用(举例)
2.1 am命令使用
am和pm这两个命令应该算是最复杂也是最常用的了.我们可以通过am启动页面,发送广播等,可以通过pm列出手机中的app,启用禁用app等。当然有一些是需要root权限的。举个例子:am命令,am指令是 activity manager的缩写,可以启动Service、Broadcast,杀进程,监控等功能,这些功能都非常便捷调试程序。可以通过adb shell 进入Android 的Linux命令界面,输入am -help查看详细命令,如下列出几个简单用法:
2.2 dumpsys 命令使用
dumpsys
的一般语法如下:
adb shell dumpsys [-t ] [--help | -l | --skip | [] | -c | -h]
要获取所连接设备的所有系统服务的诊断输出,只需运行
adb shell dumpsys
不过,这样输出的信息非常多。要使输出更加可控,可以通过在命令中添加相应服务来指定要检查的服务。例如,下面的命令会提供输入组件(如触摸屏或内置键盘)的系统数据:
adb shell dumpsys input
如需查看可与
dumpsys
配合使用的系统服务的完整列表,请使用以下命令:
adb shell dumpsys -l下表列出了使用 dumpsys
时的可用选项。
2.3 wm命令用法
wm是高通平台(MTK平台类似的命令为am)下对手机分辨率、像素密度、显示区域进行设置的命令。其参数比较少,下面举例子说明该命令的用法。
2.4 rm命令的用法
rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。
rm是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时必须谨慎。
2.5 logcat 命令的用法
Logcat 是一个命令行工具,用于转储系统消息日志,包括设备抛出错误时的堆栈轨迹,以及从您的应用使用 log 类写入的消息。
安卓的log系统如下:
android log系统示意
打印出来的这些用法信息,如果感到有不好理解的,可以根据需要去网络上自行搜索。
2.6 cat 命令的用法
打印出来的cat的语法结构及解释如下:
de>cat [选项] [文件]...de>
选项
-A, --show-all 等价于 -vET
-b, --number-nonblank 对非空输出行编号
-e 等价于 -vE
-E, --show-ends 在每行结束处显示 $
-n, --number 对输出的所有行编号
-s, --squeeze-blank 不输出多行空行
-t 与 -vT 等价
-T, --show-tabs 将跳 字符显示为 ^I
-u (被忽略)
-v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
--help 显示此帮助信息并离开
3.个人如何学习
安卓提供的命令工具特别多,全部记住并不现实,能够熟练使用本模块的常用工具就已经很不错了。当然掌握常用命令的常用用法,其实也并不困难,下面提供两种思路供大家参考。
3.1 推荐学习方法一
如果自己英文可以,理解能力也过关,可以通过命令行,直接查看上述每个命令行工具的用法,标志词汇:usage后面提示用法。
3.2 方法二
实际使用过程中,也有一些命令使用方法一,并没有得到usage提示, 这类情况可以直接百度;另外,如果感觉直接通过【工具名称 --help】来查看工具的usage理解有难度,也可以直接用如下方法进行学习:
总结:不论是使用百度还是谷歌进行搜索,很明显能感知到这些命令工具的用法已经有很多成熟的技术文档供大家参考,命令学习成本极低,大部分都是直接上手可用。