一 adb常用命令

1. 查看设备

adb devices      //当前连接的设备, 连接到计算机的android设备或者模拟器将会显示处理

2. 安装软件 卸载软件

adb install xxx.apk               //安装软件
adb install -r xxx.apk            //重新安装该软件
adb uninstall apk包名.apk         //卸载apk软件

3. 登录设备shell

adb shell                //进入手机的超级终端Terminal 
adb shell <command命令>  //直接shell运行设备命令, 相当于执行远程命令

4. 从PC上发送文件到手机

adb push <本地路径> <远程路径> 
adb push D:\xxx.apk system/app/ 
//A[system/app/]为手机路径,B[D:\xxx.apk]为电脑路径,,把文件从电脑复制到手机上

5. 从手机上下载文件到PC

adb pull <远程路径> <本地路径> 
adb pull system/app/xxx.apk D:\ 
//A[system/app/xxx.apk]为手机路径,B[D:\]为电脑路径,,把文件从手机中复制到电脑上

6. 其他

adb remount           //重新挂载文件系统
adb reboot            //重启手机
adb reboot recovery   //重启到Recovery界面
adb reboot bootloader //重启到bootloader界面

二 log使用

android.util.Log常用的方法有以下5个:Log.v() Log.d() Log.i() Log.w() 以及 Log.e() 。

根据首字母对应VERBOSE,DEBUG,INFO, WARN,ERROR。

1、Log.v 的调试为黑色,任何消息都会输出

2、Log.d 的输出为蓝色,仅输出debug调试信息

3、Log.i 的输出为绿色,一般提示性消息information,无v和d的信息,会显示i、w和e的信息

4、Log.w 的意思为橙色,warning信息,需要我们注意优化Android代码,会输出e的信息。

5、Log.e 为红色错误信息,分析查看栈信息。

三 adb logcat过滤

1. 只显示需要的输出,白名单

最方便的当然是通过管道使用 grep 过滤了,这样可以使用 grep 强大的正则表达式匹配。简单的匹配一行当中的某个字符串,例如 MyApp:

adb logcat | grep MyApp

adb logcat | grep -i myapp #忽略大小写。

2 保存log

使用-d参数,可以在读完所有log后返回,而不会一直等待,在自动化较有用。例如:

adb logcat -d -s xxx > xxx.log //得到filter为xxx的日志,存入xxx.log,然后返回。

3 其他

adb logcat -s TAG名称             //显示某一TAG的日志信息:
adb logcat -v time -s videocamera //打印出 log 信息中时间,以及包含关键字 "videocamera"  的所有