2. 查看设备基本信息

任务目标

连接一台Android设备(真机或模拟器),通过ADB命令获取设备的基本信息,包括:设备连接状态、设备型号、系统版本、序列号、Android SDK版本等。最终能够确认设备已被ADB正确识别,并读取到关键硬件与系统属性。

环境准备

  • 已安装Android Platform Tools(包含adb),并已加入系统PATH。
  • 设备已开启开发者选项与USB调试(真机),或已启动模拟器。
  • 在终端执行 adb version 能正常输出版本号,说明ADB环境可用。

核心命令与实现

以下命令按顺序执行,即可完成设备基本信息的采集。将命令保存为Shell脚本 device_info.sh 可一键运行。

#!/bin/bash
# 文件名: device_info.sh
# 功能: 获取Android设备基本信息

echo "===== 1. 检查设备连接状态 ====="
adb devices -l

echo ""
echo "===== 2. 获取设备状态 ====="
adb get-state

echo ""
echo "===== 3. 获取设备序列号 ====="
adb get-serialno

echo ""
echo "===== 4. 获取设备型号 ====="
adb shell getprop ro.product.model

echo ""
echo "===== 5. 获取系统版本(Android版本号) ====="
adb shell getprop ro.build.version.release

echo ""
echo "===== 6. 获取SDK API级别 ====="
adb shell getprop ro.build.version.sdk

echo ""
echo "===== 7. 获取设备品牌 ====="
adb shell getprop ro.product.brand

echo ""
echo "===== 8. 获取设备ABI架构 ====="
adb shell getprop ro.product.cpu.abi

执行前赋予脚本执行权限:chmod +x device_info.sh,然后运行 ./device_info.sh。

验证方法与判定标准

运行脚本后,逐项核对输出:

  • adb devices -l 输出列表中包含你的设备序列号,且状态为 device(而非 unauthorized 或 offline)。若为模拟器,序列号通常形如 emulator-5554。
  • adb get-state 输出为 device,表示设备已就绪。
  • adb get-serialno 输出的序列号与 adb devices 中显示的序列号一致。
  • getprop 各项输出非空且符合实际设备信息。例如:型号输出 Pixel 7、系统版本输出 13、SDK级别输出 33。

若 adb devices 显示 unauthorized,请在设备上点击“允许USB调试”授权弹窗后重试。若显示 offline,请重新插拔USB线或重启ADB服务(adb kill-server 后 adb start-server)。

常见问题

  • 找不到设备:确认USB线支持数据传输(非仅充电),并尝试更换USB端口。
  • getprop 返回空值:部分定制ROM可能修改了属性名,可先执行 adb shell getprop 查看全部属性列表,再从中定位对应字段。
  • 多台设备连接:脚本默认操作唯一设备;若连接多台,需在命令中指定 -s 序列号,例如 adb -s emulator-5554 shell getprop ro.product.model。