15.setting命令

setting命令可以很方便的更改系统设置中的参数(如修改系统默认输入法)

安卓Settings模块浅析:https://www.jianshu.com/p/ed8508fe4289

adb shell settings 控制安卓系统设置:https://blog.csdn.net/xingchenxuanfeng/article/details/52023048   <已看>

(0)# settings get system screen_off_timeout 获取屏幕的休眠时间

(1)# settings put system screen_off_timeout 999999999  设置屏幕的睡眠时间,也是用来设置系统的睡眠时间(下次断电上电后还是有效的)

(2)# settings get secure default_input_method  获得系统默认输入法

(3)# settings get system screen_brightness_mode          获取屏幕亮度模式

(4)# settings get system screen_brightness      获取屏幕亮度

(5)# settings put system screen_brightness 150 设置屏幕亮度为150

(6)# settings get global auto_time             获取日期时间选项中通过网络获取时间的状态

(7)# settings put global auto_time 0

(8)# settings get global wifi_on   获取系统wifi是否打开

(9) # settings put global wifi_on 0       关闭wifi

(10)# settings get global airlpane_mode_on 获取系统是否处于飞行模式

(11)# settings get secure android_id   获取android_id

注意这里面的system和global的区别 ?

16.TODO:怎样让Android一启动就执行一个脚本?

17.TODO:查frameworks/base/packages/SettingsProvider/res/values/defaults.xml这个文件作用?

18.查一运行adb,Ubuntu就非常卡 ?

19. pm命令

# pm list packages       列出应用列表,eg: package:android.car.usb.handler,加-s列出系统应用,加-3列出第三方应用,加[name]列出与name相关的应用(等效grep)。

# pm clear <packagename> 相当于在设置里的应用信息界面点击了「清除缓存」和「清除数据」。

 

21.am命令

1.am主要用于与应用程序交互,用法:am <command> 常用的<command>如下:

# start [options] <INTENT>                 启动 <INTENT> 指定的 Activity

# startservice [options] <INTENT>      启动 <INTENT> 指定的 Service

# broadcast [options] <INTENT>        发送 <INTENT> 指定的广播

# force-stop <packagename>                   停止 <packagename> 相关的进程, <INTENT> 参数很灵活,和写 Android 程序时代码里的 Intent 相对应。

# am start [options] <INTENT>           调起 Activity,eg: am start -n com.tencent.mm/.ui.LauncherUI

# am startservice [options] <INTENT> 调起service,eg: am startservice -n com.tencent.mm/.plugin.accountsync.model.AccountAuthenticatorService

# am broadcast [options] <INTENT>   发送广播,eg: am broadcast -a android.intent.action.BOOT_COMPLETED -n org.mazhuang.boottimemeasure/.BootCompletedReceiver 表示向 org.mazhuang.boottimemeasure/.BootCompletedReceiver 发送一个BOOT_COMPLETED广播,这类用法在测试的时候很实用,比如某个广播的场景很难制造,可以考虑通过这种方式来发送广播。

# am force-stop <packagename>              强制停止某一个应用

22.input命令来模拟按键输入

1.eg输入触摸: # input touchscreen tap 50 250  # input touchscreen tap 1000 250 在屏幕上可以看到和触摸了屏幕一样的效果。

2.input keyevent <keycode>              3表示home键,4表示返回键

3.input keyevent 26             电源键,关闭电源,此时车机就关机了。

4.input keyevent 82             菜单键

5.input text 12345678    例如屏幕上显示要输入wifi密码,此时这条指令就会把密码输出到屏幕中显示密码的位置。

23.adb相关命令

adb学习笔记

24.logcat命令

Android中的logcat和日志打印

25.getprop获取系统属性

# getprop ro.product.model 查看设备信息 eg: Nexus 5

# getprop ro.build.version.release      获取Android系统的版本,如8.1.0

26.dumpsys 查看系统的状态  TODO:查它的具体功能 ?

1.# dumpsys battery     查看电池状态

level: 100    //当前电量

scale: 100   //最大电量

2.# dumpsys window displays    查看显示屏参数。 其打印信息中mDisplayId为显示屏编号,init是初始分辨率和屏幕密度,若app的高度比init里的要小,表示屏幕底部有虚拟按键。

3.类似命令还有:dumpcache  dumpstate  dumpsys      TODO:查

27.wm命令

1.# wm size    查看屏幕分辨率 eg: wm size打印Physical size: 2608x720,可以看出双屏使用同一framebuffer.

2.# wm density   查看屏幕密度

28.查看各个网口的MAC地址

# cat /sys/class/net/wlan0/address

# cat /sys/class/net/eth0/address

29.CPU信息

# cat /proc/cpuinfo

29.查看更多硬件属性配置信息

# cat /system/build.prop      它里面的每一项可以通过getprop命令单独查看

30.screencap命令

# screencap -p /sdcard/sc.png    屏幕截图,目前测试发现若是有2个屏,截的图只是一个屏的。用-d指定另一个屏的id也截取不到。

31.screenrecord命令

# screenrecord /sdcard/filename.mp4 屏幕录制,停止时按 Ctrl-C,默认录制时间和最长录制时间都是 180 秒

32.wifi的配置文件目录

# ls /data/misc/wifi/

33.data命令设置系统时间

# date -s 20160823.131500

34.monkey命令

# monkey -p <packagename> -v 500  使用monkey进行压力测试,向 <packagename> 指定的应用程序发送 500 个伪随机事件。Monkey 的详细用法参考 官方文档:https://developer.android.com/studio/test/monkey.html

35.重启到recovery模式

# reboot recovery  重启到recovery模式

# reboot  从recovery重启到Android

# reboot bootloader 重启到 Fastboot 模式

36.getevent可以用来监听系统中所有的输入设备产生的事件

37. ps 命令

# ps --help

用法:ps [-AadefLlnwZ] [-gG GROUP,] [ -k FIELD,] [ -o FIELD,] [ -p PID,] [-t TTY,] [-uU USER,]

作用:列出进程信息。

eg:多个选项一起使用:# ps -o SCHED, -t, -g system, -o TCNT,

(1)要显示的进程(选择可能是以逗号分隔的列表):

-A 所有进程

-a 具有非会话领导者的终端的进程

-d 所有不是会话领导者的进程

-e 与-A相同

-g 属于GROUPs

-G 属于真正的GROUPs(在sgid之前)

-p PIDs(--pid)

-P 父PID(--ppid)

-s 在会话ID中

-t 附加到选定的TTY

-T 显示主题

-u 由USERs拥有

-U 由真实用户拥有(在suid之前)

eg:

# ps -g system     查看group为system的所有进程,其它可选项:root wifi radio audioserver logd bluetooth media vehicle_network shell cameraserver drm keystore mediaex mediacodec tombstoned bluetooth u0_aXX webview_zygote

# ps -P 1 列出init进程创建的伺服进程

# ps -p 2 然后再# ps -P 2 可以列出由kthreadd创建的伺服进程

# ps -t ttyMSM0  列出占用串口ttyMSM0的进程。结合cat /proc/cmdline中的console=ttyMSM0可以知道占用控制台的是哪些进程。

(2)对输出做修改:

-k 按+增加或-降低顺序(--sort)对FIELD进行排序

-M 测量字段宽度(根据需要扩展)

-n 显示数字USER和GROUP

-w 宽输出(不截断字段)

eg:

# ps -n 1       列出init进程的使用个数

(3)要显示哪些域(默认 = -o PID,TTY,TIME,CMD)

-f 完整列表(-o USER:12=UID,PID,PPID,C,STIME,TTY,TIME,ARGS=CMD)

-l 长列表(-o F,S,UID,PID,PPID,C,PRI,NI,ADDR,SZ,WCHAN,TTY,TIME,CMD)

-o 输出FIELD而不是默认值,每个都有可选的:size和= title

-O 将FIELDS添加到默认值

-Z 包括LABEL

(4)输出的域解释

ARGS  减去初始化路径的commandline

CMD  Command (thread) name (stat[2])

CMDLINE  Command line (argv[])

COMM  Command filename (/proc/$PID/exe)

COMMAND  Command file (/proc/$PID/exe)

NAME  Process name (argv[0] of $PID)

eg:

# ps -A -o CMDLINE   只想要所有进程的cmdline

(5)使用-o输出的进程的属性

ADDR 指令指针

BIT 这个过程是32位还是64位 eg: # ps -A -o BIT 发现的确有32bit的

CPU 运行哪个处理器     eg: # ps -A -o CPU 查看所有进程都运行在哪个CPU下

ETIME 自PID启动以来经过的时间   eg:# ps -g bluetooth -o ETIME     看bluetooth服务启动时长,以分:秒表示

F 标志(1 = FORKNOEXEC 4 = SUPERPRIV) eg: # ps -g bluetooth -o F

GID 查看group ID    eg: # ps -g bluetooth -o GID

GROUP 组名称  eg: # ps -g bluetooth -o GROUP

LABEL 安全标签       eg: # ps -g bluetooth -o LABEL

MAJFL 主要页面错误 eg: # ps -g bluetooth -o MAJFL

MINFL 次要页面错误 eg:# ps -g bluetooth -o MINFL

NI nice值(越低越快) eg: # ps -g bluetooth -o NI

PCPU 使用的CPU时间百分比 eg: # ps -g bluetooth -o PCPU

PCY Android调度策略 eg:# ps -g bluetooth -o PCY

PGID 流程组ID  eg: # ps -g bluetooth -o PGID

PID 进程ID eg:# ps -g bluetooth -o PID

PPID 父进程ID

PRI 优先级(更高更快)      eg: # ps -g bluetooth -o PRI

PSR 处理器最后执行了  eg: # ps -g bluetooth -o PSR

RGID Real(在sgid之前)组ID   eg:# ps -g bluetooth -o RGID

RGROUP Real(在sgid之前)组名

RSS 常驻集大小(正在使用的页面)      eg: # ps -g bluetooth -o RSS

RTPRIO 实时优先级 eg:# ps -g bluetooth -o RTPRIO

RUID Real(在suid之前)用户ID

RUSER Real(在suid之前)用户名  eg: # ps -g bluetooth -o RUSER

S 流程状态:R(运行) S(休眠) D(设备I/O) T(停止) t(跟踪) Z(僵尸) X(deader) x(死) K(wakekill) W(醒来)

SCHED 调度策略(0 = other,1 = fifo,2 = rr,3 = batch,4 = iso,5 =空闲)

STAT 过程状态(S)加:

<高优先级 N低优先级 L锁定存储器

会话负责人+前台l多线程

STIME 以hh开始的过程开始时间:mm(size:19表示yyyy-mm-dd hh:mm:ss)

SZ 内存大小(完全换出进程需要4k页)      eg: # ps -g bluetooth -o SZ

TCNT 线程数     eg: # ps -g bluetooth -o TCNT

TID 线程ID eg: # ps -g bluetooth -o TID

TIME CPU的时间消耗

TTY 控制终端

UID 用户ID

USER 用户名

VSZ 虚拟内存大小(1k单位)   eg:# ps -g bluetooth -o VSZ

%VSZ VSZ占物理内存的百分比   eg:# ps -o %VSZ

WCHAN 我们在内核中等待什么 eg: # ps -g bluetooth -o WCHAN

Android命令行工具学习总结的更多相关文章

  1. Android命令行工具logcat详细用法!

    logcat是Android中一个命令行工具,可以用于得到程序的log信息. 见板凳详细说明!     本贴内容来自网络,引用网址为:http://hi.baidu.com/%C9%C1%D2%AB% ...

  2. FFmpeg命令行工具学习(一):查看媒体文件头信息工具ffprobe

    一.简述 ffprobe是ffmpeg命令行工具中相对简单的,此命令是用来查看媒体文件格式的工具. 二.命令格式 在命令行中输入如下格式的命令: ffprobe [文件名] 三.使用ffprobe查看 ...

  3. FFmpeg命令行工具学习(三):媒体文件转换工具ffmpeg

    一.简述 ffmpeg是一个非常强大的工具,它可以转换任何格式的媒体文件,并且还可以用自己的AudioFilter以及VideoFilter进行处理和编辑.有了它,我们就可以对媒体文件做很多我们想做的 ...

  4. FFmpeg命令行工具学习(二):播放媒体文件的工具ffplay

    一.简述 ffplay是以FFmpeg框架为基础,外加渲染音视频的库libSDL构建的媒体文件播放器. 在使用ffplay之前必须要安装到系统中,MAC的安装教程为:http://www.cnblog ...

  5. FFmpeg命令行工具学习(四):FFmpeg 采集设备

    在使用 FFmpeg 作为编码器时,可以使用FFmpeg采集本地的音视频采集设备的数据,然后进行编码.封装.传输等操作. 例如,我们可以采集摄像头的图像作为视频,采集麦克风的数据作为音频,然后对采集的 ...

  6. ArcGIS Server命令行工具学习笔记

    备份命令 backup.py 参数: -u 管理员账号 -p 密码 -s 站点URL -f 备份文件的存储目录路径 -h 显示帮助 还原命令 restore.py 参数: -u 管理员账号 -p 密码 ...

  7. FFmpeg命令行工具学习(五):FFmpeg 调整音视频播放速度

    FFmpeg对音频.视频播放速度的调整的原理不一样.下面简单的说一下各自的原理及实现方式: 一.调整视频速率 调整视频速率的原理为:修改视频的pts,dts 实现: ffmpeg -i input.m ...

  8. 轻松学习Ionic (二) 为Android项目集成Crosswalk(更新官方命令行工具)

        现在集成crosswalk不用这么麻烦了!官方的命令行工具已经能让我们一步到位,省去很多工作,只需在cmd中进入项目所在目录(不能有中文目录,还得FQ),执行: ionic browser a ...

  9. [转]轻松学习Ionic (四) 修改应用图标及添加启动画面(更新官方命令行工具自动生成)

    本文转自:http://blog.csdn.net/zapzqc/article/details/42237935 由于Ionic更新了命令行工具,以后修改应用图标和添加启动画面就简单了,最新方法见最 ...

随机推荐

  1. [HAOI2006]l旅行

    这道题...一眼看出一个暴力思虑...那就是按照生成树... 排完序之后从当前边开始向后做生成树... 统计一下答案就好了... 结果...这就是正解...QVQ...smg...我去... 呆码: ...

  2. Problem B 一元二次方程类

    Description 定义一个表示一元二次方程的类Equation,该类至少具有以下3个数据成员:a.b和c,用于表示方程“a*x*x + b*x +c = 0”.同时,该类还至少具有以下两个成员函 ...

  3. 进阶ES6 点滴认知

    1.let--不允许重复声明 根据http://es6.ruanyifeng.com/#docs/let 的例子,我竟然 报格式错误 说实话,我也没见过函数这样的写法......然后我就随意加了函数名 ...

  4. mybatis-generator没有自动生成代码和Junit测试controller

    本来mybatis的generator想要自动生成增删改的,但是到后来语句就两个select,原因是数据中没有给字段加primary,就不会有删改增. 以及Controller的Junit测试 先导入 ...

  5. 20165214 预备作业3 Linux安装及学习

    一.VirtualBox和Ubuntu的安装 点进VirtualBox的官网后,不知道为什么,我只看到了5.2.6版本...又看到同学反映说5.2.7版本会出现问题,我想可能是工作人员正在补5.2.7 ...

  6. PMS5003ST+Arduino Nano OLED屏显示

    整合OLED显示和PMS5003报数 #include <Arduino.h> #include <pms.h> /////////////////////////////// ...

  7. ALTER语句重命名,重新定义和重新排序列

    该CHANGE,MODIFY和 ALTER子句可以改变现有列的名称和定义.他们有这些比较特征: CHANGE: 可以重命名列并更改其定义,或两者都可以. 具有更多的能力MODIFY,但是以某些操作的便 ...

  8. python django 创建虚拟环境

    DRF---django-rest-framework: 1.通过一个案例简单回顾一下django, 一.前后端分离,不分离 不分离:前端页面的显示,都是由后端返回的,就是说后端处理了参数,数据库,之 ...

  9. 在Linux系统下mail命令的用法

    在Linux系统下mail命令的测试 1. 最简单的一个例子: mail -s test admin@aispider.com 这条命令的结果是发一封标题为test的空信给后面的邮箱,如果你有mta并 ...

  10. 爬虫系列3:scrapy技术进阶(xpath、rules、shell等)

    本文主要介绍与scrapy应用紧密相关的关键技术,不求很深入,但求能够提取要点.内容包括: 1.xpath选择器:选择页面中想要的内容 2.rules规则:定义爬虫要爬取的域 3.scrapy she ...