M1 Mac运行Android模拟器报错:arm64架构不被x86_64主机支持
解决M1 Mac下Android模拟器识别主机架构错误的问题
问题分析
你的M1 Mac本身是arm64架构,但模拟器报错识别为x86_64主机,大概率是终端运行在Rosetta 2转译环境,或者模拟器二进制是x86_64版本导致的——上周能运行可能是之前终端/模拟器处于原生arm64环境,后来被误改了配置。
解决方案
1. 检查终端是否启用Rosetta转译
- 找到终端应用,右键点击→「显示简介」
- 取消勾选「使用Rosetta打开」,重启终端后重新执行
emulator -avd Nexus_6_API_29
2. 验证模拟器二进制的架构
执行以下命令查看模拟器的架构信息:
lipo -info ~/Library/Android/sdk/emulator/emulator
如果输出中没有arm64,说明你安装的是x86_64版本的模拟器,需要:
- 打开Android Studio→SDK Manager→SDK Tools
- 勾选「Android Emulator」,点击「Apply」更新到支持arm64的版本(确保下载适配Apple Silicon的版本)
3. 检查AVD配置兼容性
- 打开AVD Manager,编辑你的Nexus_6_API_29设备
- 确认系统镜像选择的是「arm64-v8a」版本,尝试点击「Show Advanced Settings」,将「Emulated Performance」里的「Graphics」设置为「Automatic」或「Hardware - GLES 2.0」
4. 确认环境变量PATH优先级
确保你的PATH环境变量中,Android SDK的emulator路径优先于其他可能的x86_64模拟器路径。在终端执行:
echo $PATH
检查~/Library/Android/sdk/emulator是否在路径列表靠前位置,如果不是,调整你的shell配置文件(比如.zshrc或.bashrc),添加:
export PATH="$HOME/Library/Android/sdk/emulator:$PATH"
保存后执行source ~/.zshrc(对应你的shell类型)生效。
内容的提问来源于stack exchange,提问作者stoefln
相关产品推荐
相关产品推荐

