Android 调试利器:ADB 应用列表查询与脚本化启动指南

在进行 Android 自动化测试或远程控制时,Android Debug Bridge (ADB) 是最核心的工具。本文总结了如何从零开始查询应用包名、实现一键启动以及编写简单的自动化脚本。


🔍 一、 快速获取应用包名 (Package Name)

所有的 ADB 操作都离不开“包名”。使用 Package Manager (pm) 命令可以轻松检索。

需求命令
查看所有应用adb shell pm list packages
仅查看第三方应用adb shell pm list packages -3
按关键字过滤`adb shell pm list packages
查看当前运行的应用`adb shell dumpsys window

常用包名示例:

  • 小红书com.xingin.xhs
  • 美团com.sankuai.meituan

🚀 二、 启动应用的三种姿势

启动应用主要使用 Activity Manager (am) 工具。

1. 简易模式(Monkey 命令)

不需要知道具体界面名称,直接拉起应用图标: adb shell monkey -p <包名> -c android.intent.category.LAUNCHER 1

2. 精准模式(am start)

如果你需要启动特定的 Activity: adb shell am start -n <包名>/<Activity路径>

  • 小红书入口com.xingin.xhs/.index.v2.IndexActivityV2
  • 美团入口com.sankuai.meituan/com.meituan.android.pt.homepage.activity.MainActivity

3. 辅助操作

  • 强制关闭adb shell am force-stop <包名>
  • 清除所有数据adb shell pm clear <包名>

📜 三、 脚本化:让操作自动化

为了提高效率,我们可以将上述命令封装进脚本。

1. Python 自动化模板

利用 Python 的 subprocess 模块,你可以轻松控制设备:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import subprocess

def launch_app(package):
    # 停止应用并重新启动
    subprocess.run(f"adb shell am force-stop {package}", shell=True)
    subprocess.run(f"adb shell monkey -p {package} 1", shell=True)
    print(f"成功拉起: {package}")

# 调用示例
launch_app("com.xingin.xhs")