基本指令
1. adb version:用来显示adb版本信息
2. adb help:帮助信息,查看adb所支持的所有命令
3. 启动/关闭服务
adb start-server :启动adb服务adb kill-server :关闭adb服务
4. adb devices:用来查看当前连接的设备,已连接的设备会显示出来
5. adb -s 设备名 :如果有显示多个连接设备,只要操作其中一个,则用该命令的方式来执行比如:adb -s 192.168.10.101:5555 shell问题 :如果连接提示:unauthorized、unkown或offline,表示连接失败。解决方法:1)确定设备是否开启usb调试2)确定设备的驱动是否安装好,驱动的安装可以采用360手机助手(其他助手)连接测试机,会自动安装驱动并连接测试。3)确定设备是否有授权;
权限指令
1. adb root:获取Android管理员(root用户)的权限
2. adb shell :登录设备shell,这个命令将登录设备的shell(内核),登录shell后可以使用cd、ls、rm等linux命令
3. adb remount:获取System分区可写权限,需要root后才能有这个权限
查看包名
查看应用包名方式一:• adb shell pm list packages 显示所有包名• adb shell pm list packages –s 显示系统应用包名• adb shell pm list packages -3 显示第三方应用包名方式二:• ls /data/data 显示所有包名
apk操作指令
安装apk• adb install <apk文件路径> :将本地apk软件安装到设备上• adb install -r <apk电脑上的路径> :将本地apk软件安装到设备上,并替换原来已存的APK
卸载apk• adb uninstall <apk包名>: 将设备上的apk卸载• adb uninstall -k <apk包名> :将设备上apk卸载,但是保留配置和缓存文件• 以上的命令替换成:adb shell pm uninstall -k package
文件操作指令
上传文件adb push <本地路径> <远程路径> :把本地的文件或文件夹复制到设备(手机)下载文件adb pull <远程路径> <本地路径> :把设备(手机)的文件或文件夹复制到本地(最好创建一个目录存放)
日志操作命令
adb logcat
• adb logcat : 抓取日志,ctrl+c结束logcat可以查看手机4个缓冲区日志,包括 radio,system,main,event;• radio 存放通信的日志,比如通话短信等;• event 表示手机按键输出等 事件 日志等;• main 指的是手机的应用软件的日 志,是应用层日志输出;• system是 系统组日志 。• 如果不指定,则 默认输出main和system的日志 ,如果需要指定,则需要使用参数logcat是实时日志,在你操作软件的同时,同步会输出日志信息。1. adb logcat -b 指定缓冲区 如:adb logcat -b main 输出main的日志2. adb logcat -v time 如:adb logcat -v time 输出的日志同步打印时间3. adb logcat -v time -b 执行缓冲区 如:adb logcat -v time -b system4. adb logcat –v time -b 执行缓冲区>d:\ logcat.log 输出的日志保存在本地的文件上5. adb logcat -c 清理日志6. adb logcat *:E 日志筛选,只输出error日志
logcat分析
• 输出的日志格式如下所示:
由五部分组成:1. 写下日志的时间,如图: 06-28 19:38:10.4642. 日志级别由低到高分别是 Verbose 、 Debug 、 Info 、 Warning 、 Error 。• V: Verbose 就是冗长啰嗦的,通常表达开发调试过程中的一些详细信息,不过滤地输出所有调试信息,是最低级的 Log 可以不用管。• D: Debug 调试,显示开发调试的信息,正式版本需要关闭。• I: Info 来表达一些信息,提示性的信息。 把这些信息注释掉• W: Warning 表示警告,但不一定会马上出现错误,开发时有时用来表示特别注意的地方。• E : Error 表示出现错误,是最需要关注解决的3. 标签( tag ):标明日志发起者和方便日志的过滤筛选,如上种的 AndroidRuntime4.PID( 进程 ID) :比如上面的 69425. 正文:本日志的整体内容可以通过: FATAL EXCEPTION 定位到错误( java 捕捉异常)
adb bugreport
adb bugreport :输出日志(包括logcat日志),同时也 包括功耗、CPU等日志信息。只支持Android7.0以上的版本1、 输入指令后开始抓取Log,不需要按 Ctrl+C 来停止,会自动化停止Log打印,一般出现bug(如程序停止 运行)后可用此方法抓取, 主要抓取出现问题时往前10分钟左右的信息 ,所以必须在出现问题立即采用此方法才有效,问题出现时间太长不建议使用此方法。2、adb bugreport >d:\ bugreport.log 输出日志,保存在本地文件
系统操作指令
1. 查看设备信息adb shell getprop ro.product.model :获取设备型号adb shell getprop ro.build.version.release :获取设备android系统版本adb get-serialno :获取设备的序列号adb shell wm size :获取设备屏幕分辨率2. 截图adb shell screencap -p /sdcard/mms.png :屏幕截图adb pull /sdcard/mms.png D:\app :将截图导出到本地3. 查看系统信息-dumpsys
adb shell dumpsys meminfo com.android.contacts :查看联系人的内存使用情况adb shell dumpsys window windows | findstr mFocusedApp :查看当前打开的应用包名和界面adb shell dumpsys activity | find "mFocusedActivity" :查看当前打开的界面
input操作指令
模拟按键/输入-inputadb shell input help: input命令帮助adb shell input keyevent <keycode> :模拟键盘操作,不同的keycode能实现不同的功能• Android adb keyevent键值大全:https://blog.csdn.net/sinat_27672523/article/details/88748398adb shell input swipe 300 1000 300 500 :模拟滑动操作,从300,1000滑动到300,500坐标adb shell input text hello :模拟文本输入操作,要求:焦点在某文本框中