adb常用命令
本文于1423天之前发表,文中内容可能已经过时。
adb简介
adb全称Android Debug Bridge,意为安卓调试桥接,即常用于Android手机调试的工具。adb提供了一系列命令可以操作手机,比如安装卸载软件,运行shell命令等等。adb工作方式是采用监听Socket TCP5554等端口的方式让IDE和Qemu通讯。
常用的adb命令
- 取得当前连接电脑的设备的状态
adb devices
- 安装卸载软件
adb install <-r> 文件.apk //-r表示替换掉原来的apk adb uninstall <-k> {package} //packageName表示应用包名 -k表示保留配置和缓存
- 获取设备的序列号
adb get-serialno //获取设备序列号
- 访问手机SQLit数据库(手机内部需有sqilte3命令支持)
adb shell sqlite3 {数据库文件名}
- 从电脑上发送文件到手机端
adb push {文件路径} {手机端路径} //文件表示要发送文件的全路径(当前路径下只需写上文件名 {手机端路径}表示拷贝到手机上的路径,/sdcard/表示sd卡根路径
- 从手机端拉取文件到电脑端
adb pull {手机端路径} {保存到电脑端路径}
- 查看bug报告
adb bugreport //Android7.0及以后支持该功能
- 获取手机中的第三方包名
adb shell pm list packages -3
- 查看当前正在交互的程序
adb shell dumpsys activity | grep "Running activities" -A 7
- 获取包名所在路径
adb shell pm path {package}
- Monkey命令
全模块:
单模块adb shell "monkey --ignore-crashes --ignore-timeouts --throttle 500 --ignore-security-exceptions --monitor-native-crashes --ignore-native-crashes 10000 > sdcard/monkey.txt"
adb shell monkey -p com.android.contacts --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes --ignore-native-crashes --throttle 500 -v 10000 > sdcard/monkey.txt"
- 强行停止monkey
adb shell ps | grep monkey kill monkey对应的pid
- 列出所有可以dump的选项
adb shell dumpsys -l
- 查看内存信息
adb shell dumpsys meminfo
- 列出dumpsys能提供的所有服务列表
adb shell dumpsys service list //得到该列表后,就可以在dumpsys后面加上service的名称来查看指定service的信息了
- 查看ActvityManagerService 所有信息
adb shell dumpsys activity
- 查看Activity组件信息
adb shell dumpsys activity activities
- 查看Service组件信息
adb shell dumpsys activity services
- 产看ContentProvider组件信息
adb shell dumpsys activity providers
- 查看BraodcastReceiver信息
adb shell dumpsys activity broadcasts
- 查看Intent信息
adb shell dumpsys activity intents
- 查看进程信息
adb shell dumpsys activity processes
- 关闭或开启adb服务
adb kill-server adb start-server
- 显示或导出log信息
adb logcat <-s> //在命令行显示log信息 -s表示指定标签tag adb logcat > log.txt //将log信息保存到当前目录的log.txt文件中
- 启动Activities
adb shell am start -n {包名}/{包名+类名}(-n 类名,-a action,-d date,-m MIME-TYPE,-c category,-e 扩展数据,等)
- 设置系统属性信息
adb shell setprop {key} {value}
- 常用的adb shell命令
ps //列出所有进程 ls //列出当前目录下文件 df //检查文件系统的磁盘空间占用情况 cat //查看某个文件 kill {pid}//杀死某个进程 cd //进入其他目录 rm //删除 rmdir //删除非空文件夹(有文件的文件夹可能不成功)
- 显示WiFi信息
adb shell dumpsys wifi
- 模拟用户点击
adb shell input tap {x} {x} //例子:adb shell input tap 50 250
- 模拟用户滑动
adb shell input swipe {start.x} {start.y} {end.x} {end.y} {time} //例子:adb shell input swipe 50 250 250 250 500 //划屏操作,前四个数为坐标点,后面是滑动的时间(单位毫秒)
- 模拟输入字符串
adb shell input text 'abc'
- 模拟点击手机自带的功能键:Home,Menu,Back
adb shell input keyevent keyCode keyCode对应表: KEYCODE_UNKNOWN=0; KEYCODE_SOFT_LEFT=1; KEYCODE_SOFT_RIGHT=2; KEYCODE_HOME=3; KEYCODE_BACK=4; KEYCODE_CALL=5; KEYCODE_ENDCALL=6; KEYCODE_0=7; KEYCODE_1=8; KEYCODE_2=9; KEYCODE_4=11; KEYCODE_5=12; KEYCODE_6=13; KEYCODE_7=14; KEYCODE_8=15; KEYCODE_9=16; KEYCODE_STAR=17; KEYCODE_POUND=18; KEYCODE_DPAD_UP=19; KEYCODE_DPAD_DOWN=20; KEYCODE_DPAD_LEFT=21; KEYCODE_DPAD_RIGHT=22; KEYCODE_DPAD_CENTER=23; KEYCODE_VOLUME_UP=24; KEYCODE_VOLUME_DOWN=25; KEYCODE_POWER=26; KEYCODE_CAMERA=27; KEYCODE_CLEAR=28; KEYCODE_A=29; KEYCODE_B=30; KEYCODE_C=31; KEYCODE_D=32; KEYCODE_E=33; KEYCODE_F=34; KEYCODE_G=35; KEYCODE_H=36; KEYCODE_I=37; KEYCODE_J=38; KEYCODE_K=39; KEYCODE_L=40; KEYCODE_M=41; KEYCODE_N=42; KEYCODE_O=43; KEYCODE_P=44; KEYCODE_Q=45; KEYCODE_R=46; KEYCODE_S=47; KEYCODE_T=48; KEYCODE_U=49; KEYCODE_V=50; KEYCODE_W=51; KEYCODE_X=52; KEYCODE_Y=53; KEYCODE_Z=54; KEYCODE_COMMA=55; KEYCODE_PERIOD=56; KEYCODE_ALT_LEFT=57; KEYCODE_ALT_RIGHT=58; KEYCODE_SHIFT_LEFT=59; KEYCODE_SHIFT_RIGHT=60; KEYCODE_TAB=61; KEYCODE_SPACE=62; KEYCODE_SYM=63; KEYCODE_EXPLORER=64; KEYCODE_ENVELOPE=65; KEYCODE_ENTER=66; KEYCODE_DEL=67; KEYCODE_GRAVE=68; KEYCODE_MINUS=69; KEYCODE_EQUALS=70; KEYCODE_LEFT_BRACKET=71; KEYCODE_RIGHT_BRACKET=72; KEYCODE_BACKSLASH=73; KEYCODE_SEMICOLON=74; KEYCODE_APOSTROPHE=75; KEYCODE_SLASH=76; KEYCODE_AT=77; KEYCODE_NUM=78; KEYCODE_HEADSETHOOK=79; KEYCODE_FOCUS=80;//*Camera*focus KEYCODE_PLUS=81; KEYCODE_MENU=82; KEYCODE_NOTIFICATION=83; KEYCODE_SEARCH=84; KEYCODE_MEDIA_PLAY_PAUSE=85; KEYCODE_MEDIA_STOP=86; KEYCODE_MEDIA_NEXT=87; KEYCODE_MEDIA_PREVIOUS=88; KEYCODE_MEDIA_REWIND=89; KEYCODE_MEDIA_FAST_FORWARD=90; KEYCODE_MUTE=91;