adb常用命令

1、adb介绍

ADB,全称: Android Debug Bridge,是一种操作手机设备或模拟器的命令行工具。

2、adb安装

前提:安装java + 配置环境变量(原因:android SDK的开发是依赖java语言的)

android SDK下载地址:

https://developer.android.com/studio/releases/platform-tools.html(指到\platform_tools路径下)

安装操作:下载 + 配置环境变量

3、adb常用命令

-设备连接

真机:usb连接 + 开启调试模式
android模拟器:mumu(7555)、夜神、雷电、逍遥等

# win(+手机驱动)连接模拟器 7555:端口号
adb connect 127.0.0.1:7555 
# mac 关闭adb服务
adb kill-server
# 查看连接设备
adb sevices
# 查看设备状态
adb get_state

可能问题:

offline:连接出现问题,设备无响应

Unauthorized : 未授权

解决办法:

# mac 关闭adb服务
adb kill-server
# 查看连接设备(重启adb 服务)
adb sevices

-adb命令格式

# 格式: adb [-d|-e|-s <设备号>] <command>
# 说明:
#     -d指定当前唯一通过usb连接的设备为命令目标
#     -e指定当前唯一运行的模拟器为命令目标
#     -s指定相应的设备为命令目标

-安装/卸载

# 普通安装 apk path: apk路径
adb install <apk path>

# 覆盖安装/替代安装
adb install -r <apk path>

# 卸载应用
adb uninstall xx.apk

# 卸载应用(不删除配置文件,保存数据缓存信息)
adb uninstall -k xx.apk

-启动页面命令

package包:是android应用的唯一标志,例如com.baidu.demo

activity活动页:是android应用页面

# 打开应用,获取当前页面所属的 <package名>/<activity名>
adb shell "dumpsys window | grep mCurrentFocus"

# 获取启动页面的activity
adb logcat ActivityManager:I | grep "cmp"    
adb logcat ActivityManager:I | findstr "cmp"

# 启动页面
adb shell am start -n <package名>/<activity名>

-adb shell 常用命令

# am: activity相关 pm: package相关
# 查看目录结构
adb shell ls
# 查看系统当前日期
adb shell date
# 查看系统CPU使用情况
adb shell cat /proc/cpuinfo
# 查看系统内存使用情况
adb shell cat /proc/meminfo
# 显示所有应用
adb shell pm list package
adb shell pm list packages -f  # 显示路径
# 显示系统自带应用
adb shell pm list package -s
# 显示第三方应用
adb shell pm list package -3
# 打开应用,获取当前页面所属的 <package名>/<activity名>
adb shell "dumpsys window | grep mCurrentFocus"
# 启动页面
adb shell am start -n <package名>/<activity名>
# 清除应用数据及缓存
adb shell clear <包名>

# 使用screencap命令来进行手机屏幕截图
adb shell screencap /sdcard/screen.png

# 使用screenrecord[options] filename命令来录制屏幕视频
adb shell screenrecord /sdcard/video.mp4

# 使用adb shell input命令向屏幕输入一些信息
adb shell input text "insert%stext%shere"

# 使用adb shell input tap命令 模拟屏幕点击事件
adb shell input tap 100 200 # 表示在屏幕上(100,200)坐标点点击一次

# 使用adb shell input swipe命令 模拟手势滑动事件
adb shell input swipe 100 200 300 100 10 # 表示从(100,200)开始滑到(300,100)结束 整个过程耗时10ms

# 使用adb shell input keyevent命令来模拟点按实体按钮
adb shell input keyevent 25 # 表示调低音量。数字25是在AOSP源码中的KeyEvent类里定义的一个事件常量
adb shell input keyevent 3 # home页面
adb shell input keyevent 4 # 返回

## dumpsys命令提供的系统信息 使用adb shell service list查看dumpsys提供查询信息的服务
# 常用服务:activity AMS相关信息|package	PMS相关信息|window WMS相关信息|input IMS相关信息|power PMS相关信息|procstats 进程统计|battery 电池信息|alarm	闹钟信息|meminfo	内存
adb shell dumpsys battery # 查看电池信息
adb shell dumpsys cpuinfo <应用名> # 查看cpu信息
adb shell dumpsys meminfo <应用名> # 查看cpu信息
adb shell top -d 1 |grep 'com.baidu.demo' # -d 1 每隔1s 刷新

-adb 传输文件

# 从手机上拉文件
adb pull <设备路径> <电脑路径> 
adb pull /data/local/tmp/xx.sh  
# 从本地往手机上推文件
adb push <电脑路径> <设备路径>
adb push xx.sh /data/local/tmp/
adb push xx.sh /sdcard/

-adb查看系统日志

日志的级别:V-verbose 明细|D-debug 调试|I-info 信息|W-warn 警告|E-error 错误|F-fatal严重错误|S-silent 静默状态

# 命令格式
adb logcat [tag:level] [tag:level] ...
adb logcat    # 打印默认日志数据
adb logcat -v time    # 打印时间
adb logcat -v color    # 使用不同颜色显示不同优先级
adb logcat -f <filename>    # 将日志输出到文件
adb logcat > log.log    # 重定向到本地文件
adb logcat -c    # 清理已存在的日志

# 添加过滤
adb logcat -v time '*:W'    # 打印warning及以上级别日志
adb logcat ActivityManager:D '*:S' # 过滤tag为ActivityManager,level为debug及以上的日志

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值