如何通过adb工具判断安卓手机是否已关机?
安卓设备关机状态准确检测方案
现象原因说明
adb devices仅检测设备与电脑之间的底层连接链路(有线USB的枚举状态、无线adb的网络连通性),不会验证安卓系统上层的adb守护进程是否正常运行。设备关机后只要保持USB有线连接、供电正常,底层USB链路未断开就会被adb devices正常识别,和开机状态的返回结果完全一致。
可行检测方法
方法1:执行系统交互类adb命令(通用最高效)
运行需要安卓系统响应的adb命令即可验证状态,推荐使用开机状态标识查询命令:
adb shell getprop sys.boot_completed结果判断规则:
- 返回
1:设备已完成开机,处于正常系统运行状态 - 返回空值、
error: device offline、连接失败等错误提示:设备处于关机、引导加载、未解锁等非系统运行状态
- 返回
方法2:端口连通性检测(仅适用于无线adb场景)
无线adb连接的设备,开机状态会默认监听5555端口,可通过端口检测判断状态:
# 将下方IP替换为你的安卓设备实际局域网IP nc -zv 192.168.xxx.xxx 5555结果判断规则:
- 返回
succeeded!提示:端口可连通,设备处于开机状态 - 返回连接拒绝、超时无响应:设备已关机或断开局域网连接
- 返回
特殊场景区分
部分设备关机后插入USB会进入充电引导模式、fastboot模式,也可能被链路检测识别,可运行fastboot命令区分:
fastboot devices如果返回设备列表,说明设备处于bootloader引导模式,未进入正常安卓系统。
内容的提问来源于stack exchange,提问作者huang gao
相关产品推荐
相关产品推荐

