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 包(包含 adbfastboot)。
  • 它会自动配置好环境变量,无需手动修改 .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 开发者的基本功,也是玩机爱好者、测试人员必备的技能。遇到问题时,请遵循 "检查物理连接 -> 确认开发者选项 -> 查看授权状态 -> 分析日志" 的排查思路。祝调试顺利!


相关推荐
SammeryD2 小时前
Android gradle镜像
android
2501_915106322 小时前
Flutter 开发工具有哪些 跨平台项目开发与上架实操指南
android·flutter·ios·小程序·uni-app·iphone·webview
黄林晴2 小时前
Kotlin 2.4.0 正式发布,快来看看有哪些更新
android·kotlin
鹏程十八少2 小时前
10. Android Shadow是如何实现像tinker热修复动态修复so(源码解析)
android·前端·面试
踏雪羽翼2 小时前
android 使用Gemini大模型实现图片处理
android·开发语言·ai聊天·ai抠图·ai生图·gemini大模型
刘晨鑫12 小时前
MySQL主从复制与读写分离
数据库·mysql·adb
Kapaseker2 小时前
Android 吐槽大会:音频焦点反人类
android·kotlin
吃不胖爹2 小时前
手机连接 Android Studio 调试完整步骤
android·智能手机·android studio