Android开发的"魔杖"之ADB命令

哈哈,欢迎来到ADB(Android Debug Bridge)的魔法世界!🎩✨ 作为Android开发的"魔杖",ADB能让你隔空操控手机、抓取信息、调试问题。下面我用故事+实战代码带你解锁这些命令的奥秘,保证你笑着学会!(文末有超实用总结表~)


📜 第一章:ADB魔法杖的启动仪式

想象你是一位手机巫师,手里握着ADB这根"魔杖"。先施展基础咒语建立连接:

bash

Copy

Download

bash 复制代码
# 1. 唤醒魔杖(查看版本)
adb version

# 2. 召唤设备列表(你的"使魔"们)
adb devices
# 输出示例:List of devices attached
#           emulator-5554   device  # 模拟器
#           5e3b1a7c        device  # 真机

# 3. 附身指定设备(对5e3b1a7c施法)
adb -s 5e3b1a7c shell

# 4. 时空传送文件(手机↔电脑)
adb push magic_spell.apk /sdcard/  # 电脑→手机
adb pull /sdcard/screenshot.png ~/Desktop/ # 手机→电脑

💡 小剧场 :当设备显示unauthorized时,手机会弹出"是否允许USB调试"------这是手机在问:"巫师大人,我该信任您吗?" ✅勾选"始终允许"即可!


🔮 第二章:操控App的时空魔法(am/pm)

通过am(Activity Manager)和pm(Package Manager)命令,你就像时间管理局特工

bash

Copy

Download

bash 复制代码
# 1. 启动App(打开微信)
adb shell am start -n com.tencent.mm/.ui.LauncherUI

# 2. 强制停止App(关闭崩坏的游戏)
adb shell am force-stop com.super.crash.game

# 3. 召唤所有App真名(包名列表)
adb shell pm list packages
# 输出:package:com.android.chrome
#      package:com.instagram.android

# 4. 隔空安装/卸载
adb install ~/Downloads/new_app.apk  # 安装
adb uninstall com.spam.app          # 卸载

🌟 秘籍 :想快速获取当前界面的Activity?执行:
adb shell "dumpsys activity top | grep ACTIVITY"


🤖 第三章:人偶操控术(input命令)

想象你用提线木偶的方式控制手机:

bash

Copy

Download

python 复制代码
# 1. 模拟点击(点中屏幕坐标(300,500))
input tap 300 500

# 2. 模拟滑动(从A点滑到B点)
input swipe 500 1500 500 500 200  # 200ms内上滑

# 3. 输入文字(自动填验证码)
input text 123456

# 4. 物理按键控制(常用键值)
input keyevent 4    # 返回键
input keyevent 26   # 电源键
input keyevent 24   # 音量+

实战场景

自动刷短视频:while true; do input swipe 500 1000 500 300 200; sleep 5; done


🕵️ 第四章:窥探记忆水晶(logcat日志)

手机的所有秘密都藏在logcat水晶球里:

bash

Copy

Download

perl 复制代码
# 1. 基础查看(Ctrl+C停止)
adb logcat

# 2. 过滤关键字(抓取包含"error"的日志)
adb logcat | grep "error"

# 3. 专查崩溃日志(Crash神器!)
adb logcat -b crash

# 4. 高级用法(带时间+保存文件)
adb logcat -v time -d > crash_report.txt

🔍 调试技巧 :遇到闪退时,快速执行:
adb logcat -b crash -d | tail -n 50 # 抓最近50行崩溃日志


⚙️ 第五章:系统后台的上帝视角

通过访问系统节点,你成了手机硬件的"管理员":

bash

Copy

Download

bash 复制代码
# 1. 查看当前亮度值
adb shell cat /sys/class/leds/lcd-backlight/brightness

# 2. 修改亮度(需root)
adb shell "echo 150 > /sys/class/leds/lcd-backlight/brightness"

# 3. 查看CPU频率
adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq

# 4. 监控电流(单位微安)
adb shell cat /sys/class/power_supply/battery/current_now

⚠️ 注意 :修改系统节点可能需adb root权限,部分命令需要厂商调试支持


📡 第六章:无线施法指南(摆脱数据线)

解除USB线的"封印":

bash

Copy

Download

perl 复制代码
# 1. 启动手机端的ADB无线端口
adb tcpip 5555  # 必须先用USB连接执行一次

# 2. 查询手机IP(进入设置→关于手机)
# 假设IP是192.168.1.100

# 3. 无线连接!
adb connect 192.168.1.100

# 4. 断开连接
adb disconnect

🌐 优势:连接后拔掉数据线,仍可远程调试、传文件、抓日志!


🗝️ 第七章:Keycode密码本速查

常用按键的魔法编号:

键位 编号 键位 编号
返回键 4 HOME键 3
音量+ 24 音量- 25
电源键 26 回车键 66
菜单键 82 拍照键 27
0-9数字键 7-16 A-Z字母键 29-54

用法:input keyevent 26 = 点击电源键


💎 超实用ADB命令速查表

类别 命令示例 作用
设备控制 adb reboot 重启手机
adb screencap /sdcard/screen.png 截屏
调试神器 adb shell dumpsys battery 查看电池状态
adb shell settings list system 查看系统设置
高级操作 adb backup -all -f backup.ab 完整备份
adb restore backup.ab 恢复备份
无线调试 adb pair 192.168.1.100:12345 Android 11+无线配对

终极技巧 :组合命令实现自动化!

例:自动截图并拉取到电脑:
adb shell screencap /sdcard/auto.png && adb pull /sdcard/auto.png

掌握这些ADB咒语,你就能:

✅ 无需触碰手机完成测试

✅ 快速定位崩溃问题

✅ 批量操作多台设备

✅ 深度分析系统状态

现在,举起你的"ADB魔杖",开始统治Android世界吧!🎉

相关推荐
大王派来巡山的小旋风28 分钟前
Kotlin基本用法之集合(一)
android·程序员·kotlin
用户20187928316730 分钟前
智能广播系统(RemoteCallbackList)的诞生
android
用户2018792831672 小时前
Binder 同应用内(本地)通信是否存在 1MB 大小限制?
android
一条上岸小咸鱼2 小时前
Kotlin 基本数据类型(四):String
android·前端·kotlin
Onion_993 小时前
学习下Github上的Android CICD吧
android·github
来来走走3 小时前
Flutter Form组件的基本使用
android·flutter
顾林海4 小时前
Android MMKV 深度解析:原理、实践与源码剖析
android·面试·源码阅读
雨白4 小时前
TCP/IP 核心概念详解:从网络分层到连接管理
android
Wgllss5 小时前
雷电雨效果:Kotlin+Compose+协程+Flow 实现天气UI
android·架构·android jetpack
用户207038619497 小时前
Compose 可点击文本:ClickableText Compose 中的 ClickableSpan
android