MacBook Pro M2 Max(Apple Silicon)上adb push功能异常求助
Apple Silicon设备上ADB的前置要求与推送卡顿解决方法
一、核心前置要求
- 使用适配Apple Silicon的ADB版本
切勿使用仅支持Intel架构的旧版ADB,必须安装原生arm64架构的版本:- 通过Android Studio的SDK Manager安装最新Platform Tools,会自动匹配Apple Silicon架构。
- 或直接下载官方arm64版Platform Tools压缩包,解压后将
adb所在路径添加到系统PATH环境变量。
- 权限与调试授权
- Mac的「安全性与隐私」面板中,需允许ADB相关进程的运行权限(首次运行弹出提示时务必授权)。
- 连接的Android设备需开启「USB调试」,并在设备端确认授权当前Mac的调试请求。
- Rosetta 2适配(可选)
若依赖部分仅支持Intel的工具,可对终端启用Rosetta 2:右键终端→显示简介→勾选「使用Rosetta打开」。但优先推荐原生arm64版ADB,减少性能损耗。
二、推送文件夹卡顿的解决操作
- 替换为原生arm64版ADB
- 执行
which adb定位当前ADB路径,删除旧文件。 - 下载官方arm64版Platform Tools,解压后将路径添加到
~/.zshrc(或~/.bash_profile):export PATH=$PATH:/你的platform-tools文件夹路径 - 重启终端,运行
adb version确认输出包含arm64标识。
- 执行
- 调整ADB传输缓冲区
推送前执行命令增大传输缓冲区,缓解小文件连续传输的阻塞问题:adb shell setprop debug.adb.tcp.buffers 4096 87380 1048576 4096 87380 1048576 - 分批次推送文件
若设备MTP模式兼容性差,可拆分文件夹推送:for file in folder/*; do adb push "$file" /sdcard/; done
内容的提问来源于stack exchange,提问作者Rachit Sharma
相关产品推荐
相关产品推荐

