在Linux上安装特定的ADB版本

时间:2019-04-11 14:01:04

标签: android adb

我想为连接设备使用特定的adb版本。对于连接外部仿真器,我尝试使用adb connect localhost:5555,我得到的结果是:

[adb]: adb server version (36) doesn't match this client (40); killing...
[adb]: * daemon started successfully

对于安装adb,我使用apt install adb,但我只有1.0.36版。

有人知道我是否可以安装和使用adb 1.0.40版吗?

5 个答案:

答案 0 :(得分:3)

您可以使用

下载特定版本的平台工具。
wget https://dl.google.com/android/repository/platform-tools_r<specific-version>-linux.zip

但是平台工具版本和adb版本之间几乎没有关联。

例如platform-tools_r29.0.5-linux具有adb版本41。您可以查看所需的特定adb版本的发行说明。

下载后,请按照@lojza答案为您的系统设置软链接。

答案 1 :(得分:0)

在我的Dockerfile中,我使用:

  mkdir -p /usr/local/android-sdk \
  && cd /usr/local/android-sdk/ \
  && curl -OL https://dl.google.com/android/repository/platform-tools-latest-linux.zip \
  && unzip platform-tools-latest-linux.zip \
  && rm -f platform-tools-latest-linux.zip \
  && ln -s /usr/local/android-sdk/platform-tools/adb /usr/bin/adb \
  && export PATH=/usr/local/android-sdk/platform-tools:${PATH} \
  && echo "export PATH=/usr/local/android-sdk/platform-tools:${PATH}" >> /etc/profile \

答案 2 :(得分:0)

从Android Studio更新您的Android SDK平台工具,然后转到“ / Sdk / platform-tools /”目录。 运行./adb --version 您可以在不同位置维护多个adb版本文件的方法相同。

答案 3 :(得分:0)

由于此 ADB 服务器版本 (XX) 与此客户端 (YY) 不匹配;杀...似乎是一个非常突出的问题,让我提出一个非常直接的解决方案 - 我实际上想知道为什么在其他任何地方都没有回答,或者至少,我找不到它。要查找您正在使用的 ADB 版本,请键入 adb version 以获取如下内容:

Android Debug Bridge version 1.0.41
Version 30.0.5-6877874
Installed as D:\Setups\XXXXX\Lineage FP3\platform-tools_30.0.5(ADB_1.0.41)\adb.exe

Android 版本与 adb 版本不匹配。例如,Android 11 使用 API 30 和 ADB 41。Android 10 (API 29) 并且该手机需要 ADB 40。您可以检查您的 Android 版本以找到相应的 ADB 版本获取或轻松阅读上面的错误信息以找到 XX(在本例中为 40)。

我能够从 herehere 找到 ADB 版本 1.0.40。它就像一个魅力:

D:\Setups\XXXXX\Lineage FP3\platform-tools_28.0.1(ADB_1.0.40)>adb devices
List of devices attached
A2XXXXXXXXX1    unauthorized.

答案 4 :(得分:0)

对于这个问题,上面的链接可能无效。但是我找到了针对特定平台工具(包括所有操作系统)的 github repo。所以只需下载与特定adb相关的版本(例如28.0.1对应ADB 1.0.40)。然后解压并设置环境。