MacOS 系统下 ADB (Android Debug Bridge) 全面安装与配置指南



MacOS 系统下 ADB 全面安装与配置指南

    • [1. 摘要 (Abstract)](#1. 摘要 (Abstract))
    • [2. 背景与作用 (Background)](#2. 背景与作用 (Background))
      • [2.1 什么是 ADB?](#2.1 什么是 ADB?)
      • [2.2 核心作用](#2.2 核心作用)
    • [3. 安装步骤 (Installation)](#3. 安装步骤 (Installation))
      • [方法一:使用 Homebrew 安装(推荐 ⭐⭐⭐⭐⭐)](#方法一:使用 Homebrew 安装(推荐 ⭐⭐⭐⭐⭐))
        • [第一步:安装 Homebrew (如果尚未安装)](#第一步:安装 Homebrew (如果尚未安装))
        • [第二步:安装 ADB (platform-tools)](#第二步:安装 ADB (platform-tools))
        • 第三步:验证安装
      • [方法二:通过 Android Studio 安装(适合开发者)](#方法二:通过 Android Studio 安装(适合开发者))
      • 方法三:手动安装 (不推荐,除非无法使用 Homebrew)
    • [4. 基础设置与连接 (Basic Setup & Connection)](#4. 基础设置与连接 (Basic Setup & Connection))
      • [4.1 开启手机开发者选项](#4.1 开启手机开发者选项)
      • [4.2 连接设备](#4.2 连接设备)
      • [4.3 macOS 特有权限提示](#4.3 macOS 特有权限提示)
    • [5. 常用命令实战 (Common Commands)](#5. 常用命令实战 (Common Commands))
    • [6. 常见问题与陷阱 (Troubleshooting & Pitfalls)](#6. 常见问题与陷阱 (Troubleshooting & Pitfalls))
      • [6.1 设备显示 `unauthorized`](#6.1 设备显示 unauthorized)
      • [6.2 设备列表为空 (No devices found)](#6.2 设备列表为空 (No devices found))
      • [6.3 `adb: command not found`](#6.3 adb: command not found)
      • [6.4 权限拒绝 (Permission Denied)](#6.4 权限拒绝 (Permission Denied))
      • [6.5 多设备冲突](#6.5 多设备冲突)
      • [6.6 ADB 版本冲突](#6.6 ADB 版本冲突)
      • [6.7 `adb devices` 列表为空 (无反应)](#6.7 adb devices 列表为空 (无反应))
      • [6.8 显示 `???????????? no permissions`](#6.8 显示 ???????????? no permissions)
      • [6.9 `command not found: adb`](#6.9 command not found: adb)
      • [6.10 无线调试 (WiFi) 连接失败](#6.10 无线调试 (WiFi) 连接失败)
      • [6.11 Fastboot 无法识别设备](#6.11 Fastboot 无法识别设备)
    • [7. 进阶技巧与效率提升](#7. 进阶技巧与效率提升)
      • [7.1 启用 Tab 自动补全](#7.1 启用 Tab 自动补全)
      • [7.2 常用别名 (Alias)](#7.2 常用别名 (Alias))
      • [7.3 截图与录屏](#7.3 截图与录屏)
    • [8. 学习资源推荐 (Learning Resources)](#8. 学习资源推荐 (Learning Resources))
      • [8.1 官方文档 (最权威)](#8.1 官方文档 (最权威))
      • [8.2 在线教程与社区](#8.2 在线教程与社区)
      • [8.3 书籍推荐](#8.3 书籍推荐)
      • [8.4 进阶工具](#8.4 进阶工具)
    • [9. 结语](#9. 结语)

macOS 系统下 ADB (Android Debug Bridge) 全面安装与配置指南

本指南专为 macOS 用户(包括 Intel 和 Apple Silicon M1/M2/M3 芯片)设计,涵盖从环境搭建、基础配置、进阶使用到常见问题排查的全流程。

在 macOS 系统下配置 ADB (Android Debug Bridge) 环境非常高效,尤其是对于使用 Apple Silicon (M1/M2/M3/M4) 芯片的用户,原生支持度极佳。相比 Windows,macOS 不需要安装复杂的 USB 驱动程序;相比 Linux,它通常也不需要手动配置 udev 权限规则。

MacOS系统下ADB安装与配置指南 本指南详细介绍了在MacOS系统(包括Intel和M系列芯片)上安装配置ADB工具的方法。推荐使用Homebrew一键安装,自动处理环境变量和更新问题。内容涵盖: 三种安装方式(Homebrew/Android Studio/手动安装) 设备连接设置与授权流程 常用ADB命令速查表(设备管理、文件传输、应用安装等) MacOS特有权限问题解决方案 特别针对M系列芯片优化,无需额外配置即可原生运行。适合开发者和普通用户快速搭建Android调试环境。


1. 摘要 (Abstract)


ADB (Android Debug Bridge) 是 Android 开发与调试的核心命令行工具,充当电脑(客户端)与 Android 设备(服务端)之间的桥梁。在 macOS 上,推荐通过 Homebrew 进行一键安装,因其能自动处理环境变量和后续更新。本指南将指导您完成安装、验证、设备连接、常用命令实战(安装 APK、日志抓取、文件传输),并深入解析"设备未授权"、"权限 denied"、"多设备冲突"等高频陷阱,最后提供权威学习资源。


2. 背景与作用 (Background)


2.1 什么是 ADB?

ADB 是一个包含三个组件的客户端 - 服务器程序:

  1. 客户端 (Client) : 运行在您的 Mac 上,发送命令。您通过终端 (Terminal) 调用它。
  2. 守护进程 (Daemon, adbd): 运行在 Android 设备上,执行命令。
  3. 服务器 (Server): 运行在 Mac 后台,管理客户端与守护进程的通信。

2.2 核心作用

  • 应用调试 : 安装/卸载 APK,查看崩溃日志 (logcat)。
  • Shell 访问: 进入设备的 Linux 命令行,执行底层操作。
  • 文件传输 : 在 Mac 和设备间推拉文件 (push/pull)。
  • 端口转发: 将设备端口映射到本地,用于调试网络应用。
  • 屏幕控制 : 截图 (screencap)、录屏 (screenrecord)。
  • 刷机辅助 : 配合 fastboot 工具进行系统刷写。

3. 安装步骤 (Installation)

在 macOS 上,强烈推荐使用 Homebrew,这是最简洁且易于维护的方式。


方法一:使用 Homebrew 安装(推荐 ⭐⭐⭐⭐⭐)

Homebrew 是 macOS 的包管理器,能自动处理环境变量和架构兼容性(Intel vs Apple Silicon)。

第一步:安装 Homebrew (如果尚未安装)

打开 终端 (Terminal) (按 Cmd + Space 搜索 "Terminal"),粘贴以下命令并回车:

bash 复制代码
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • 按提示输入密码(输入时不显示)。
  • 如果是 Apple Silicon (M1/M2/M3),安装完成后可能需要运行提示中的两条 eval 命令来配置路径。
  • 安装完成后,根据终端提示执行 eval "$(/opt/homebrew/bin/brew shellenv)" (M系列) 或 eval "$(/usr/local/bin/brew shellenv)" (Intel)。*
第二步:安装 ADB (platform-tools)

在终端执行:

bash 复制代码
brew install android-platform-tools
  • Homebrew 会自动下载最新的 platform-tools 包(包含 adb 和 fastboot)。
  • 它会自动配置好环境变量,无需手动修改 .zshrc。
  • 此命令会自动下载并安装 adb, fastboot, etc1tool 等全套工具。*
第三步:验证安装

执行以下命令,若输出版本号则成功:

bash 复制代码
adb version
  • 预期输出示例*: Android Debug Bridge version 1.0.41 ...

方法二:通过 Android Studio 安装(适合开发者)

如果你正在开发 Android 应用,这是最标准的方式。

  1. 下载并安装 Android Studio。
  2. 打开 Android Studio,进入 Settings (偏好设置) -> Appearance & Behavior -> System Settings -> Android SDK。
  3. 点击 SDK Tools 标签页。
  4. 勾选 Android SDK Platform-Tools ,点击 Apply 安装。
  5. 关键步骤:配置环境变量
    Android Studio 不会自动将 ADB 加入全局路径,需手动配置:
    • 找到路径:通常是 ~/Library/Android/sdk/platform-tools

    • 编辑配置文件(macOS 默认使用 Zsh):

      bash 复制代码
      nano ~/.zshrc
    • 在文件末尾添加:

      bash 复制代码
      export PATH=$HOME/Library/Android/sdk/platform-tools:$PATH
    • 保存退出 (Ctrl+O -> Enter -> Ctrl+X),并刷新:

      bash 复制代码
      source ~/.zshrc

方法三:手动安装 (不推荐,除非无法使用 Homebrew)

  1. 下载 : 访问 Android SDK Platform-Tools 官网,下载 macOS 版本。

  2. 下载 platform-tools-latest-darwin.zip。

  3. 解压 : 将下载的 .zip 文件解压到指定目录,例如 ~/android-sdk/platform-tools。

    bash 复制代码
    unzip ~/Downloads/platform-tools-latest-darwin.zip -d ~
  4. 配置环境变量 :

    • 编辑配置文件:nano ~/.zshrc (macOS Catalina 及以后默认使用 zsh)。

    • 添加以下行(替换为您的实际路径~/platform-tools):

      bash 复制代码
      export PATH=$PATH:~/android-sdk/platform-tools
    • 保存退出 (Ctrl+O, Enter, Ctrl+X)。

    • 使配置生效:source ~/.zshrc。

  5. 验证 : 运行 adb version。


4. 基础设置与连接 (Basic Setup & Connection)


4.1 开启手机开发者选项

  1. 进入手机 设置 (Settings) > 关于手机 (About Phone)。
  2. 连续点击 版本号 (Build Number) 7 次,直到提示"您已处于开发者模式"。
  3. 返回设置主菜单,进入 系统 > 开发者选项 (Developer Options)。
  4. 授权:手机弹出"允许 USB 调试?",勾选"始终允许"并确认。
  5. 开启 USB 调试 (USB Debugging) 开关。

4.2 连接设备

  1. 使用 USB 数据线将手机连接到 Mac。

  2. 首次连接 : 手机屏幕会弹出"允许 USB 调试吗?"的对话框,勾选"始终允许",点击 确定。

  3. 验证连接 : 在 Mac 终端输入:

    bash 复制代码
    adb devices
    • 成功 : 显示设备序列号及 device 状态。

      text 复制代码
      List of devices attached
      R58M123456Z    device
    • 失败 : 显示 unauthorized(需在手机确认授权)或列表为空(检查数据线或驱动)。

    • 注意 :如果是第一次连接,状态可能显示 unauthorized,请在手机上确认弹窗。


4.3 macOS 特有权限提示

  • 文件访问权限 :当你尝试通过 adb pull/push 访问某些受保护目录,或使用 scrcpy 投屏时,macOS 可能会在 系统设置 -> 隐私与安全性 -> 文件和文件夹 或 辅助功能 中请求权限,请前往授权。
  • Apple Silicon 兼容性:通过 Homebrew 安装的版本已是通用二进制,无需额外配置 Rosetta 2。

5. 常用命令实战 (Common Commands)

功能 命令示例 说明
查看设备 adb devices 列出所有连接的设备
安装应用 adb install app.apk 安装 APK 到手机
覆盖安装 adb install -r app.apk 保留数据覆盖安装
卸载应用 adb uninstall com.package.name 卸载指定包名的应用
推送文件 adb push local.txt /sdcard/remote.txt Mac -> 手机
拉取文件 adb pull /sdcard/photo.jpg . 手机 -> Mac (当前目录)
进入 Shell adb shell 进入设备命令行界面 (输入 exit 退出)
查看日志 adb logcat 实时打印设备日志 (按 Ctrl+C 停止)
过滤日志 adb logcat -s TAG 只看特定 Tag 的日志
截图 adb shell screencap -p /sdcard/screen.png``adb pull /sdcard/screen.png 截取屏幕并拉到电脑
录屏 adb shell screenrecord --time-limit 10 video.mp4 录制 10 秒视频
重启设备 adb reboot 重启手机
重启到 Bootloader adb reboot bootloader 进入 Fastboot 模式
端口转发 adb forward tcp:8080 tcp:8080 将设备 8080 端口映射到本地

6. 常见问题与陷阱 (Troubleshooting & Pitfalls)

6.1 设备显示 unauthorized

  • 现象 : adb devices 显示 xxxxxx unauthorized。
  • 原因: 手机上未确认 RSA 指纹授权,或之前取消了授权。
  • 解决 :
    1. 解锁手机屏幕,查看是否有弹窗,点击"允许"。
    2. 若无弹窗:进入手机 设置 > 开发者选项 ,点击 撤销 USB 调试授权 (Revoke USB debugging authorizations),然后重新插拔数据线。

6.2 设备列表为空 (No devices found)

  • 原因 1 : 数据线仅支持充电,不支持数据传输。
    • 解决: 更换原装或高质量数据线。
  • 原因 2 : USB 调试未开启。
    • 解决: 检查开发者选项开关。
  • 原因 3 : macOS 权限问题 (较少见)。
    • 解决 : 检查 系统设置 > 隐私与安全性 > 安全性,看是否有拦截记录。

6.3 adb: command not found

  • 原因: 环境变量未配置或终端未刷新。
  • 解决 :
    • 若用 Homebrew 安装:尝试重启终端,或运行 source ~/.zshrc。
    • 若手动安装:检查 ~/.zshrc 中的 PATH 是否正确,路径是否拼写错误。

6.4 权限拒绝 (Permission Denied)

  • 现象 : 执行 adb push 到系统目录时报错。
  • 原因 : Android 系统分区挂载为只读,或非 Root 用户无权写入 /system 等目录。
  • 解决 :
    • 普通用户只能写入 /sdcard/ 或 /data/local/tmp/。
    • 若需修改系统文件,手机必须 Root ,并在 shell 中执行 adb root (仅限 userdebug/eng 版本) 或 adb shell su。

6.5 多设备冲突

  • 现象: 连接多台设备时,命令不知道发给谁。

  • 解决 : 使用 -s 参数指定序列号。

    bash 复制代码
    adb -s R58M123456Z install app.apk

6.6 ADB 版本冲突

  • 陷阱: 同时安装了 Android Studio 自带的 adb 和 Homebrew 的 adb,导致版本不一致或命令混乱。
  • 解决 : 运行 which adb 查看路径。建议统一使用 Homebrew 版本,或在 .zshrc 中调整 PATH 顺序,将 Homebrew 路径 (/opt/homebrew/bin 或 /usr/local/bin) 放在前面。

6.7 adb devices 列表为空 (无反应)

  • 检查数据线:很多线仅支持充电。换一根确认能传数据的线。

  • 检查 USB 模式 :下拉手机通知栏,确保 USB 模式不是"仅充电",改为 "文件传输 (MTP)" 或 "PTP"。

  • 重启 ADB 服务 :

    bash 复制代码
    adb kill-server
    adb start-server
    adb devices
  • 系统日志排查 :
    打开 控制台 (Console.app),插入手机,搜索 "android" 或 "usb",查看是否有设备识别错误或权限拒绝日志。

6.8 显示 ???????????? no permissions

虽然 macOS 不像 Linux 那样严格需要 udev 规则,但偶尔会出现权限卡死。

  • 解决方法 :
    1. 拔掉数据线。
    2. 运行 adb kill-server。
    3. 重新插入数据线。
    4. 如果在手机上看到新的授权弹窗,务必点击允许。
    5. 如果仍不行,尝试重启 Mac(这通常能解决底层 USB 守护进程卡死的问题)。

6.9 command not found: adb

  • 原因:环境变量未生效。
  • 解决 :
    1. 确认安装路径:ls ~/Library/Android/sdk/platform-tools/adb (Studio) 或 ls /opt/homebrew/bin/adb (Homebrew)。
    2. 检查 ~/.zshrc 是否已添加路径并执行了 source ~/.zshrc。
    3. 如果是新开的终端窗口,可能需要重启终端。

6.10 无线调试 (WiFi) 连接失败

  • 前提:手机和 Mac 必须在同一 WiFi 网络下。

  • Android 11+ 纯无线配对 :

    1. 手机开发者选项中进入"无线调试"。

    2. 点击"使用配对码配对设备"。

    3. Mac 终端运行:

      bash 复制代码
      adb pair <IP地址>:<端口>  # 输入手机显示的配对码
      adb connect <IP地址>:<端口> # 输入连接端口
  • 防火墙问题 :检查 Mac 的 系统设置 -> 网络 -> 防火墙 是否阻止了终端或相关端口的传入连接。

6.11 Fastboot 无法识别设备

  • 现象 :fastboot devices 无反应,但手机已进入 Bootloader 模式。
  • 解决 :
    • 某些旧款手机在 Bootloader 模式下需要特定的 USB 端口(尝试更换 USB-C 口)。
    • 如果是 M 系列芯片 Mac 遇到极个别老旧设备兼容性问题,尝试通过 USB Hub 连接。
    • 确保使用的是最新版的 fastboot (Homebrew 会自动更新)。

7. 进阶技巧与效率提升


7.1 启用 Tab 自动补全

让终端支持 adb sh<TAB> 自动补全命令:

  • Homebrew 用户 :通常安装时已自动配置。如果没有,运行:

    bash 复制代码
    brew install bash-completion@2  # 如果使用 bash
    # 对于 zsh (默认),确保 ~/.zshrc 中有:
    if type brew &>/dev/null; then
      FPATH=$(brew --prefix)/share/zsh/site-functions:$FPATH
      autoload -Uz compinit
      compinit
    fi

7.2 常用别名 (Alias)

在 ~/.zshrc 中添加常用快捷指令:

bash 复制代码
alias adbi='adb install -r'       # 覆盖安装
alias adbl='adb logcat'           # 看日志
alias adbs='adb shell'            # 进 Shell
alias adbp='adb push'             # 推文件
alias reboots='adb reboot bootloader' # 重启到 Fastboot

保存后运行 source ~/.zshrc。


7.3 截图与录屏

无需第三方 App,直接使用 ADB:

bash 复制代码
# 截图
adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png .

# 录屏 (最长 180 秒)
adb shell screenrecord /sdcard/demo.mp4
adb pull /sdcard/demo.mp4 .
# 按 Ctrl+C 停止录制

8. 学习资源推荐 (Learning Resources)


8.1 官方文档 (最权威)


8.2 在线教程与社区

  • XDA Developers Forum : forum.xda-developers.com
    • 全球最大安卓开发社区,适合查找特定机型的 ADB 技巧和救砖教程。
  • Stack Overflow : 标签 adb, android-debug-bridge
    • 解决具体报错的最佳场所。
  • Github - Awesome ADB: 搜索 "Awesome ADB" 可以找到很多脚本集合和高级用法整理。
  • GitHub 项目 :
    • scrcpy:通过 ADB 实现超低延迟的手机投屏与控制(强烈推荐 Mac 用户使用,比自带投屏更流畅)。
    • openandroidinstaller:图形化刷机工具,源码中包含大量处理 ADB 边缘情况的逻辑。

8.3 书籍推荐

  • 《第一行代码 Android (第3版)》 (郭霖):适合初学者,涵盖环境搭建到基础开发。
  • 《Android 系统源码深入解析》:适合想理解 ADB 底层通信机制(Socket, JDWP)的进阶用户。
  • 《Mac 命令行与 Shell 脚本编程大全》:既然在 macOS 下,精通 Zsh 和 Shell 脚本能让你的 ADB 自动化操作如虎添翼。
  • 《Android 编程权威指南》(Android Programming: The Big Nerd Ranch Guide)
    • 虽然侧重开发,但其中关于调试和工具链的章节非常扎实。
  • 《嵌入式 Android 系统开发》 (国内相关书籍)
    • 适合想深入理解 ADB 底层原理(如 JDWP、Transport 机制)的读者。

8.4 进阶工具

  • Scrcpy : github.com/Genymobile/scrcpy
    • 基于 ADB 的开源工具,可在 Mac 上以低延迟、高画质镜像和控制 Android 屏幕,比官方工具更好用。
  • Android Studio :
    • 集成图形化的 Device Manager 和 Logcat 查看器,适合可视化调试。

9. 结语

在 macOS 上配置 ADB 环境如今已非常便捷,尤其是借助 Homebrew。掌握 ADB 不仅是 Android 开发者的基本功,也是玩机爱好者、测试人员必备的技能。遇到问题时,请遵循 "检查物理连接 -> 确认开发者选项 -> 查看授权状态 -> 分析日志" 的排查思路。祝调试顺利!


相关推荐
千里马学框架4 天前
一起学 Android 14:ShellTransition 屏幕旋转过程深度剖析
android·智能手机·性能优化·framework·性能·屏幕旋转·rotation
美狐美颜SDK开放平台4 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
AFinalStone4 天前
Android7 SystemUI源码解析(七)Keyguard锁屏模块深度解析
android·systemui
致远ccc4 天前
Google Play 上架前如何测试 App?多国家 Android 环境测试
android·app测试·googleplay·多国家应用测试
ttyyttemo4 天前
Kotlin 协程中的 Job 结构化并发与取消
android
sun0077004 天前
tbox 4g/5g切换,导致wan ip 改变,导致车机旧网络不可用。需要重启车机才行
android
其实防守也摸鱼4 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
AFinalStone4 天前
Android7 SystemUI 源码解析(四)NavigationBar 导航栏与 SystemBars
android·systemui
JMchen4 天前
属性动画原理与高级动画实现
android·kotlin·canvas
AFinalStone4 天前
Android7 SystemUI 源码解析(二)启动流程深度解析
android·systemui