ADB服务器版本与客户端不匹配

时间:2017-01-15 21:58:40

标签: android windows adb

我试图开始使用GearVR的Unity开发,在设置过程中,我必须安装和配置Android SDK。在一个教程中,我被带到了一个步骤,我必须使用ADB来识别我的银河手机的签名。我导航到android sdk的平台工具目录并运行命令:adb devices,手机已插入,但命令未被识别。

所以(在bash模式下)我运行了命令:./adb devices并得到错误:

ADB Server version (31) doesn't match client (36); killing
* daemon started successfully *

当我第一次安装Android工作室时,我多次点击了安装可执行文件,启动了多个安装过程,我不得不取消其中一些,直到我当时只剩下一个。基于其他SO帖子,例如thisthis,似乎可以在系统上的其他位置安装另一个版本的adb,但我似乎无法弄清楚为什么/如何#&# 39; m无法在全局范围内使用命令adb,因为我原以为它会被全局添加到PATH中。

我尝试在控制台中使用某些命令来查找其他adb版本可能位于的位置,但我还没有能够这样做。

这可能是什么问题,我该如何解决?

3 个答案:

答案 0 :(得分:0)

您的亚行已过时。使用SDK Manager更新它。 在Tools文件夹中,下载最新的Android SDK Platform-tools,然后再进行检查。enter image description here

答案 1 :(得分:0)

当智能手机与互联网断开连接时(wifi和移动数据),我遇到了同样的错误。再次打开wifi或移动数据adb设备运行正常。当手机离线几次时,adb设备工作正常。

答案 2 :(得分:0)

在Windows上,检查“任务管理器”以查看正在运行的adb.exe进程。您可以右键单击这些进程之一以查看adb.exe文件的位置,该文​​件可能表明该文件正在作为除Android SDK之外的程序的一部分运行。

就我而言,我发现Oculus Developer Hub程序附带了自己的ADB版本,并且从Unity平台工具文件夹中复制了以下文件(在您的情况下,您希望Android SDK平台-工具文件夹)放入Oculus Developer Hub文件夹中即可解决此问题-您可能只想卸载有问题的软件,但是跨文件复制应确保adb版本兼容。复制文件后,我停止了运行的所有adb.exe进程(使用任务管理器),然后重新启动Unity。

文件:

  • adb.exe
  • AdbWinApi.dll
  • AdbWinUsbApi.dll

Unity文件夹:/ Editor / Data / PlaybackEngines / AndroidPlayer / SDK / platform-tools

Oculus Developer Hub文件夹:C:/ Program Files / Oculus Developer Hub / resources / bin