导读:本期聚焦于小伙伴创作的《Mac上如何配置Android开发环境?从零搭建完整步骤详解》,敬请观看详情。刚换Mac电脑准备做安卓开发,却被环境变量和模拟器折腾得没脾气?其实在 macOS 上把开发环境跑通,核心就是装好 JDK、Android Studio 以及对应的 SDK 平台。不同芯片的 Mac 在下载包时有Intel和Apple Silicon区分,选错版本会直接闪退。本文梳理一条不绕弯路的配置路线:先用 Homebrew 管理后台依赖,再借助官方 IDE 自动拉取编译工具链,最后通过命令行验证 adb 与模拟设备连通性。照着做能避开绝大多数权限和路径坑,省下反复重装的时间。

在 macOS 上搭建 Android 开发环境,本质是让系统具备三样东西:兼容的 Java 运行环境、Android Studio 集成开发工具,以及编译调试所需的 SDK 与平台工具。Apple 芯片与 Intel 芯片的 Mac 在二进制架构上不同,下载安装包时务必认准标注了 chip 类型的版本,否则会出现无法启动或频繁崩溃。下面按实际操作顺序拆解每一步。

Mac上如何配置Android开发环境?从零搭建完整步骤详解

一、JDK 与 Homebrew 基础依赖安装

Android Studio 新版本自带了运行所需的 JetBrains Runtime,但 Gradle 构建任务仍依赖系统中可用的 JDK。推荐通过 Homebrew 来安装,既能简化升级也能避免手动配置引发的权限混乱。在终端执行 brew 命令前,若未安装 Homebrew,可先粘贴官网给出的安装脚本,整个过程需要网络通畅且等待命令行跑完提示。

对于 JDK 版本的选择,Android 官方文档明确要求编译 SDK 33 以上需要使用 JDK 17。使用 brew install openjdk@17 安装后,需要把二进制路径软链到系统目录,否则 java -version 仍指向旧版。很多新手忽略软链步骤,导致 Studio 启动后报找不到合适 JVM 的错误。通过 /usr/libexec/java_home -V 可列出所有已装版本,确认路径无误后再继续。

除了 JDK,还可以用 Homebrew 预装一些辅助工具,例如 adb 所在的 android-platform-tools 虽然后续 Studio 会自带,但提前用命令行装好方便在终端直接调用。这样即便 IDE 未完全配置完,也能先验证设备连接是否正常,把问题隔离在环境层而非代码层。

# 安装 Homebrew(如已安装可跳过)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 安装 JDK 17
brew install openjdk@17

# 建立系统软链
sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk

# 验证版本
java -version

二、Android Studio 与 SDK 的初始化配置

到 Android 开发者官网下载对应 Mac 芯片类型的 Android Studio 磁盘镜像,拖入 Applications 文件夹后即完成主体安装。首次启动时,安装向导会引导下载 SDK 组件,这里建议勾选 Android SDK、Android SDK Platform 以及 Android Virtual Device。若磁盘空间紧张,至少保留对应目标 API 级别的 Platform 和 Build-Tools,否则新建项目会同步失败。

SDK 的默认存放路径在用户目录下的 ~/Library/Android/sdk,该路径需要配置到环境变量中,方便命令行和其他工具识别。在 ~/.zshrc 文件末尾追加导出语句,并执行 source 使其生效。很多教程写的是 ~/.bash_profile,但 macOS Catalina 之后默认 shell 已切换为 zsh,写错文件会导致终端重启后变量丢失。配置完可用 echo $ANDROID_HOME 检查输出。

Android Studio 内部的 SDK Manager 提供图形化勾选,比手动下载更稳妥。打开 Preferences 搜索 SDK,切换到 SDK Platforms 选项卡,勾选你打算适配的 Android 版本,例如 API 34。再切到 SDK Tools 选项卡,确保 Android SDK Build-Tools 与 NDK(如涉及原生开发)版本匹配。点击 Apply 后后台会下载数百兆文件,耐心等待进度条结束再新建工程。

# 写入 zsh 环境变量
echo 'export ANDROID_HOME=$HOME/Library/Android/sdk' >> ~/.zshrc
echo 'export PATH=$PATH:$ANDROID_HOME/emulator' >> ~/.zshrc
echo 'export PATH=$PATH:$ANDROID_HOME/platform-tools' >> ~/.zshrc
source ~/.zshrc

三、模拟器创建与 adb 连接验证

没有真机时,Android Virtual Device(AVD)是调试主力。在 Studio 的 Device Manager 中点击 Create Device,选一款常用机型如 Pixel 6,系统镜像尽量选带 Google Play 的版本,便于后续测试地图等依赖服务的应用。Apple Silicon Mac 要选 arm64 架构镜像,Intel Mac 选 x86_64,选反了模拟器会报内核错误无法启动。

创建完成后尝试冷启动,首次开机较慢属正常现象。若卡在开机画面超过十分钟,多半是未开启硬件加速,可在终端执行 ~/Library/Android/sdk/emulator/emulator -accel-check 查看加速状态。Mac 上通常依赖 Hypervisor.framework,无需像 Windows 那样装 HAXM,但要在系统设置中允许开发者模式,否则会提示权限不足。

模拟器运行起来后,打开新终端输入 adb devices,正常会列出一台 emulator-5554 设备且状态为 device。如果显示 unauthorized,需在模拟器弹窗中点击授权。验证完毕后可以跑一个空 Activity 项目,观察 Logcat 能否打印出系统日志。到此环境配置闭环,后续导入已有工程一般不会再因环境缺失而编译报错。

# 检查加速支持
~/Library/Android/sdk/emulator/emulator -accel-check

# 列出已连接设备
adb devices

# 安装并启动测试 APK(示例路径)
adb install app/build/outputs/apk/debug/app-debug.apk
adb shell am start -n com.example.app/.MainActivity

四、常见权限与路径故障排查

Mac 的系统完整性保护(SIP)和沙盒机制常导致 Studio 无法写入 SDK 目录。若遇到 Permission denied,不要直接 sudo chmod 777 整个 sdk 文件夹,这会带来安全隐患。更合理的做法是将 SDK 移入用户有完全控制权的路径,并修正 ANDROID_HOME 指向新位置,再重启 IDE 让其重新索引。

另一个易错点是多个 JDK 共存引发的 Gradle 报错。Studio 自带运行时与系统 JDK 不一致时,可在 Project Structure 中指定使用嵌入式 JDK,避免 Gradle 调用系统版本出现字节码不兼容。同时在 gradle.properties 里添加 org.gradle.java.home 指向同一路径,可彻底锁死构建环境,防止终端和 IDE 行为分裂。

最后提醒,网络代理也会影响 SDK 下载。国内用户若同步缓慢,可在 Studio 的 SDK Manager 里配置镜像源,或在 ~/.gradle/gradle.properties 中填写国内仓库镜像。注意仓库地址中的特殊字符需按规范转义,避免构建脚本解析失败。把上述几点处理好,Mac 上的安卓开发环境就能长期稳定服务于日常编码。

// gradle.properties 中锁定 JDK 路径示例
org.gradle.java.home=/Applications/Android Studio.app/Contents/jbr/Contents/Home

// 配置国内镜像仓库
systemProp.http.proxyHost=mirrors.ipipp.com
systemProp.http.proxyPort=80

Android_StudioSDKadb修改时间:2026-08-14 08:12:35

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。