ADB命令快速入门

adb,命令,快速,入门 · 浏览次数 : 91

小编点评

ADBadb的全称是**Android Debug Bridge**,它是一种用于调试Android程序的工具。通过adb我们可以方便调试Android程序。 **环境搭建:** 1. 安装JDK 2. 配置环境变量: - `JAVA_HOME`: JDK的安装目录 - `PATH`:%JAVA_HOME%\\bin;%JAVA_HOME%\\jre\\bin 3. 验证环境是否配置完成: - `java -version ` - `android -version ADB` **连接手机设备:** - `adb connect 127.0.0.1:7555`连接手机设备,并指定端口为7555 **启动模拟器:** - `adb devices2真机`连接真机,并启动模拟器 - 打开usb调试,电脑需要安装手机驱动 **获取设备信息:** - `adb devices`查看当前设备状态 - `adb get-state关闭服务`关闭服务 - `adb kill-server安装`安装模拟器驱动 - `adb install <apk路劲>`安装应用程序 - `adb install -r  <apk路劲>`覆盖安装 **指定设备:** - `adb -s <指定设备>`指定设备 **获取流量数据:** - `adb shell dumpsys cpuinfo`查看启动页 - `adb shell dumpsys meminfo`查看应用内存占用率 - `adb shell dumpsys dumpsys cpuinfo`查看系统 CPU 使用情况 - `adb logcat ActivityManager:I | grep “cmp”`快速启动adb shell am start -n [包名 / 页面名]查看性能数据 **分析代码内存:** - `adb shell dumpsys meminfo应用名`查看某个应用的内存占用率 - 通过定期采集数据来分析代码当中是否有内存问题 **上传日志文件:** - `adb logcat > ~/Downloads/android.log. >`重定向清理已缓存的日志 - `adb logcat -c文件传输电脑到手机上传输(电脑往外推)`将日志输出到电脑文件 **测试性能:** - `adb shell monkey -p 包名 –s seed值`执行性能测试 - `adb shell monkey -v 事件数`获取每个优先级的信息 **其他命令:** - `adb shell monkey -p 包名 --throttle`指定用户事件的操作间隔 - `adb logcat -v time ‘*:E’ > monkey.log`获取 error 级别日志

正文

什么是ADB

adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过adb我们可以方便调试Android程序。

环境搭建

1需要java环境:

  安装完JDK需要配置环境变量:

    JAVA_HOME::JDK的安装目录

    PATH:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

    CMD命令验证环境是否配置完成:java -version

 2需要安卓JDK

https://developer.android.google.cn/studio/releases/platform-tools

CMD命令验证环境是否配置完成:android -version

 ADB命令

如何链接手机设备

1模拟机
  Adb connect 127.0.0.1:7555 这个可以通过模拟器官网查询 不同模拟器不同端口
  Adb devices
2真机
  手机处于调试模式:安卓 找到版本 点击7下 就会进入开发者模式 打开usb调试
  电脑需要安装手机驱动:豌豆荚自动下载驱动(用完就删,容易占用端口)
查看状态
  adb devices :device正常 offline链接无响应 unauthorized未授权
  adb get-state

关闭服务
  Adb kill-server

安装
  Adb install <apk路劲>
  Adb install -r  <apk路劲> 覆盖安装

  指定设备:Adb -s <指定设备 可以通过adb devices查看 当有多台设备>install <apk路劲>

卸载

  Adb uninstall

查看包和活动页

注:操作系统不一样命令需要区分,mac、linux用grep,Windows用findstr

查看当前活动页

1 先打开页面

2 adb shell “dumpsys window | grep mCurrentFocus”

查看启动页

adb logcat ActivityManager:I | grep “cmp”

快速启动

adb shell am start -n [包名 / 页面名]

查看性能数据

显示当前进程的CPU信息:top -n 10 -d 5 | grep [PID]  [注]:-n表示刷新次数,-d表示刷新间隔

查看当前系统 CPU 使用情况 : adb shell dumpsys cpuinfo 是某一时间之内的占有情况

查看当前系统的内存 : adb shell dumpsys meminfo 通过这个情况查看当前应用内存占用率。可以分析 物理内存、虚拟内存的占用量。
查看某个应用的内存 : adb shell dumpsys meminfo 应用名。 通过定期采集数据 来分析代码当中是否会有内存问题 例如内存泄漏 ( 内存长期占有量较高,没有及时回收 )

查看流量:

  • 获取当前目标包的进程号:ps | grep com.xxx.xxx
  • 根据PID得到UID:cat /proc/PID/status
  • 获取下载流量:cat /proc/uid_stat /UID/tcp_rcv
  • 获取上传流量:cat /proc/uid_stat/UID/tcp_snd

进程:

top 命令 : linux 使用 top 命令来获取性能指标的 ,安卓也可用
adb shell top 来获取各个系统进程占有情况(实时)
过滤 某个包的性能指标 : adb shell top | grep 包名
固定时间 每隔 1 s : adb shell top -d 1 | grep 包名

日志

打印默认日志数据 : adb logcat

使用不同颜色来打印每个优先级 : adb logcat -v color
将日志输出到文件中 : adb logcat -f <文件地址 手机端的> 可以通过 pull 上传到电脑查看.
保存日志到电脑文件上 : adb logcat > ~/Downloads/android.log. > 表示重定向
清理已缓存的日志 : adb logcat -c

文件传输

电脑到手机上传输(电脑往外推) :adb push 电脑路径 设备路径

手机文件拉取下来 :adb pull 设备路径 电脑路径

monkey压力测试

运行某个包(对某软件测试) : adb shell monkey -p 包名 事件数

打印详细日志 : adb shell monkey -v 事件数。 -vv 更加详细的日志 -vvv 最全面的日志

运行多个包 : adb shell monkey -p 包名 -p 包名 … - vvv 事件数

-s ,用于指定伪随机数生成器的seed值  
  命令:adb shell monkey -p 包名 –s seed值 执行次数

  如果seed值相同,则两次Monkey测试所产生的事件序列也相同的,示例:
  测试1:adb shell monkey -p com.kugou.android –s 1540475754297 100   

--throttle ,用于指定用户事件的操作间隔时延,单位是毫秒

            如果不指定这个参数,monkey会尽可能快的生成和发送消息

            命令:adb shell monkey -p 包名 --throttle 3000 100

11种事件

设置事件比例 :会默认分配 ,但是 比如想测试点击事件较多,就可以设置点击比例大一点 --pct-touch 80 不超100%

 忽略异常 : monkey就是想长时间运行, 可以在有异常的时候继续执行,如果遇到异常就可以保存到日志中

   

保存日志 :

  法一 : adb shell monkey 100 后面加 > 文件名字.log。查看: cat 文件名.log 有大量无用日志,占用空间
  法二 : adb logcat -v time ‘*:E’ > monkey.log 获取 error 级别日志

与ADB命令快速入门相似的内容:

ADB命令快速入门

什么是ADB adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过adb我们可以方便调试Android程序。 环境搭建 1需要java环境: 安装完JDK需要配置环境变量: JAVA_HOME::JDK的安装目录 PATH:%JAVA_HOME%\bin;%JAVA_H

OPPO主题组件开发 - 调试与预览

本篇作为 OPPO主题组件调试与预览 文档的补充,因为它真的很简单而且太老,一些命令已发生变化😪 1. 调试前准备 1. PC 端下载 adb命令工具 下载 https://adbdownload.com/,或从其他地方下载也可 解压,放在你想放的文件夹下 配置环境变量 右键 我的电脑/此电脑 选

基于ADB Shell 实现的 Android TV、电视盒子万能遥控器 — ADB Remote ATV

ADB Remote ATV Android TV 的遥控器,基于 ADB Shell 命令 ADB Remote ATV 是一个 Android TV 的遥控器,基于 ADB Shell 命令,泛用性更高。 下面的 shell 命令,是软件的基本原理,通过 shell 命令可模拟物理遥控器的基本按

uiautomator2环境搭建+元素定位(安卓)

一.环境搭建 1.安装uiautomator2 在终端使用pip安装即可 pip install uiautomator2 2.安装adb 可参考:https://www.cnblogs.com/lihongtaoya/p/14970306.html 3.安装weditor 终端执行如下命令 pip

【Android逆向】Frida 无脑暴力破解看雪test2.apk

1. 安装apk到手机 adb install -t test2.apk apk下载位置: https://www.kanxue.com/work-task_read-800625.htm 2. 题目提示输入一个五位的数字,那么可以尝试暴力破解 3. apk拖入到jadx中可以看到 public c

uiautomator2使用方法

一.设备连接 1.usb单设备连接 d = u2.connect() 2.usb多设备连接 d = u2.connect("90bf8faf") # 多台设备填写device即可 3.wifi连接 d = u2.connect("ip:proxy") # wifi连接设备 adb使用wifi连接设备

3种方式自动化控制APP

自动化控制APP不管是在工作还是生活方面,都可以帮助我们高效地完成任务,节省时间和精力。本文主要介绍自动化控制APP的3种常用方式。 1、Python + adb 这种方式需要对Android有一些基本的了解。adb是一种用于调试Android应用程序的工具。使用Python和adb可以轻松实现自动

[Android 逆向]frida 破解 切水果大战原版.apk

1. 手机安装该apk,运行,点击右上角礼物 提示 支付失败,请稍后重试 2. apk拖入到jadx中,待加载完毕后,搜素失败,找到疑似目标类MymmPay的关键方法payResultFalse 4. adb logcat 或者androidstudio 查看该进程的日志,发现以下日志 com.mf

【Android逆向】frida 破解 滚动的天空

1. apk 安装到手机中 2. 玩十次之后,会提示 充值 3. adb shell dumpsys window | grep mCurrentFocus 查看一些当前activity是哪一个 是 AppActivity 4. 阅读代码,感觉是unity3d做的游戏 5. apk拖入到jadx中,

[Android 逆向]绕过小米需插卡安装apk限制

1. 确保自己手机是root的了 2. 给手机安装busybox,使可以用vi编辑文件 安装方法: 0. adb shell getprop ro.product.cpu.abi 获得 cpu架构信息 arm64-v8a 1. 下载 https://busybox.net/downloads/bin