安卓开发者网站adb工具
安卓开发者网站上的安卓adb工具,下载量一直不低,网站但很多人第一次点开那个页面时,工具面对一堆压缩包和校验和,安卓还是网站会愣一下。我见过不少同事,工具装了Android Studio之后直接打开终端敲adb devices,安卓结果提示command not found,网站然后才回头去搜“adb怎么装”。工具其实Google在开发者网站放的安卓那个独立zip包,就是网站给这种场景准备的——不装IDE,只拿命令行工具。工具 那个页面地址是安卓developer.android.com/tools/releases/platform-tools,名字叫SDK Platform-Tools。网站注意,工具它不叫adb下载页,adb只是里面最常用的一个可执行文件。包里还有fastboot、systrace、etc1tool这些。Windows版解压出来大概十几兆,Mac和Linux版稍小。Google每次更新都会改版本号,比如35.0.2、36.0.0,但下载链接结构基本不变。 解压之后,Windows用户会看到adb.exe、AdbWinApi.dll、AdbWinUsbApi.dll三个关键文件。少了后面两个dll,adb.exe跑不起来。Mac和Linux用户拿到的是纯二进制文件,chmod +x之后就能用。我习惯把整个platform-tools目录放到用户目录下,比如~/platform-tools,然后把这个路径加到PATH里。Windows的话,在系统环境变量里编辑Path,加一条C:\platform-tools。这样在任何终端窗口敲adb version都能看到版本号,不用每次cd到那个目录。 说到adb version,这个命令的输出格式在34版本之后变了。以前只显示Android Debug Bridge version 1.0.41,现在会多一行Version 35.0.2-12345678。后面那串数字是构建号,跟platform-tools的版本对应。如果你从第三方渠道下载adb,版本号可能对不上,甚至被改过。Google官方包虽然下载慢,但至少校验和是公开的,页面底部有SHA-256。 adb devices是最常用的命令,没有之一。连上手机,开发者选项里打开USB调试,终端敲下去,正常会显示设备序列号和device状态。如果显示unauthorized,说明手机屏幕上弹了授权框你没点允许。如果显示offline,通常是adb版本和手机端adbd版本不匹配,换最新platform-tools一般能解决。我遇到过一台老平板,adb 1.0.39能连,1.0.41反而offline,降级回去就好了。这种兼容性问题Google不会主动告诉你,得自己试。 无线调试从Android 11开始原生支持。以前要用adb tcpip 5555,再adb connect IP:5555,现在开发者选项里有个“无线调试”,配对码一输就行。但那个配对流程走的是mDNS,公司网络里如果禁了多播,配对界面会一直转圈。这时候还是得回退到tcpip方式。我实测过,同一台Pixel 6,无线调试配对成功之后,adb devices里显示的序列号会变成IP:端口,而不是原来的硬件序列号。做自动化测试脚本的时候要注意这个差异。 platform-tools包里还有个etc1tool,几乎没人提。它能把PNG转成ETC1压缩纹理,给OpenGL ES用的。早些年做手游的会用到,现在ASTC和ETC2普及了,这工具基本进了冷宫。但Google一直没删,估计是怕老项目构建脚本报错。fastboot倒是活得很好,刷工厂镜像、解锁bootloader都靠它。不过fastboot对USB驱动要求比adb高,Windows上经常要手动装Google USB Driver,或者用厂商自己的驱动包。 最后说个细节。platform-tools的zip包在Mac上解压,有时候会多出一个__MACOSX文件夹,里面是._开头的影子文件。这些文件不影响adb运行,但如果你把整个目录打包发给别人,对方在Windows上解压会看到一堆乱码文件。用zip -x "__MACOSX*"排除掉就行。Google官方包本身没有这个问题,但如果你自己重新压缩过,就容易带上。