一、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 shell pm list packages //列出手机装的所有app的包名
adb shell pm list packages -s //列出系统应用的所有包名
adb shell pm list packages -3 //列出除了系统应用的第三方应用包名
adb shell pm clear (apk包名) //清除应用数据与缓存
adb shell am force-stop (apk包名) //强制停止应用
adb shell wm size //查看屏幕分辨率
7、删除系统应用
adb remount (重新挂载系统分区,使系统分区重新可写)
adb shell
cd system/app/
ls
rm *.apk
// ls命令可以查看文件夹下的所有文件
8、杀死某个进程:(三个步骤)
adb shell
ps
kill pid
// ps是查看进程命令,kill pid 你想结束的进程
9、查看设备信息
adb shell getprop ro.product.model //型号
adb shell dumpsys battery //电池状况
输出示例:
Current Battery Service state:
AC powered: false
USB powered: true
Wireless powered: false
status: 2
health: 2
present: true
level: 44
scale: 100
voltage: 3872
temperature: 280
technology: Li-poly
//其中 scale 代表最大电量,level 代表当前电量。上面的输出表示还剩下 44% 的电量。
adb shell wm size //屏幕分辨率
adb shell wm density //屏幕密度
adb shell dumpsys window displays //显示屏参数
adb shell settings get secure android_id //android_id
adb shell dumpsys iphonesubinfo //IMEI ,android4.0版本
adb shell
su
service call iphonesubinfo 1 //IMEL ,android 5.0以上版本,需要root
adb shell getprop ro.build.version.release //Android 系统版本
adb shell ifconfig | grep Mask //IP 地址
如果连接着wifi
adb shell ifconfig wlan0
如果还获取不到,
adb shell netcfg
adb shell cat /sys/class/net/wlan0/address //Mac 地址
adb shell cat /proc/cpuinfo //CPU 信息
adb shell cat /proc/meminfo //内存信息
adb shell cat /system/build.prop //设备的更多硬件与系统属性可以通过如下命令查看
adb shell
su
cat /data/misc/wifi/*.conf //查看连接过的 WiFi 密码,ssid 即为我们在 WLAN 设置里看到的名称,psk 为密码,key_mgmt 为安全加密方式
adb shell
su
date -s 20160823.131500 //设置系统日期和时间
adb shell
su //检测设备是否已 root
adb shell monkey -p <packagename> -v 500 //使用 Monkey 进行压力测试
//onkey 可以生成伪随机用户事件来模拟单击、触摸、手势等操作,可以对正在开发中的程序进行随机压力测试
adb root
adb shell svc wifi enable //开启 WiFi
adb root
adb shell svc wifi disable //关闭 WiFi
二、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" 的所有 log
三、刷机命令
adb reboot bootloader
sudo ./fastboot devices
sudo ./fastboot flash system ./system.img
sudo ./fastboot flash userdata ./userdata.img
sudo ./fastboot flash boot ./boot.img
sudo ./fastboot flash cache ./cache.img
sudo ./fastboot flash bootloader u-boot.bin
sudo ./fastboot reboot