如何在M1芯片Mac上运行API 29以下的Android模拟器(API24/25无法启动)
M1芯片Mac运行低版本Arm架构Android模拟器解决方案
核心问题说明
M1系列芯片的Apple Silicon设备运行官方Android模拟器时,确实存在API 25及更低版本Arm64v8a镜像的兼容性缺陷,该类镜像默认调用的硬件渲染逻辑与M1芯片的GPU虚拟化适配存在冲突,因此会卡在启动页无法进入系统。
可行解决方案
方案1:优先使用官方适配的Android 8对应镜像
Android 8.0对应API Level 26、Android 8.1对应API Level 27,这两个版本均有官方适配Apple Silicon的Arm64v8a架构稳定镜像,无需强行使用API 24/25的Android 7.x版本,操作步骤如下:
- 打开Android Studio的AVD Manager,点击「Create Virtual Device」
- 选择任意手机品类机型后进入系统镜像选择页,切换到「Other Images」标签
- ABI筛选为
arm64-v8a,找到API Level 26/27的镜像下载后创建模拟器即可,该类镜像可正常开机运行,完全满足Android 8版本的bug排查需求。
方案2:确需使用API 24/25镜像时修改启动参数绕过兼容性问题
如果你的测试场景必须使用Android 7.x的API 24/25版本,可通过禁用硬件渲染的方式强制启动镜像:
- 打开终端进入模拟器工具目录,默认路径为:
cd ~/Library/Android/sdk/emulator/ - 执行命令查看已创建的所有模拟器名称:
emulator -list-avds - 找到你提前创建的API 24/25对应的模拟器名称,使用以下参数启动:
emulator -avd 替换为你的模拟器名称 -gpu swiftshader_indirect -no-snapshot -noaudio -no-boot-anim
- 参数说明:
-gpu swiftshader_indirect指定使用软件渲染替代硬件加速,避开M1与低版本镜像的渲染适配冲突,首次启动需等待3-5分钟,不要中途关闭启动窗口。
方案3:实体机调试替代
如果软件渲染的模拟器性能不足无法复现bug,可直接使用Arm架构的Android 7/8版本实体测试机连接电脑调试,排查问题的效率更高。
内容的提问来源于stack exchange,提问作者Renetik
相关产品推荐
相关产品推荐

