adb server version (40) doesn't match this client (41); killing...

在使用adb命令链接模拟器时出现了这个问题,如图:


深度截图_选择区域_20210204175425.png

从报错信息上可以看出,adb server版本和client版本不一致导致的,一个是40,一个是41。为什么会出现两个版本不一致的情况,因为我装了Genymotion模拟器,猜测可能是因为Android studio用的sdk中的adb版本和模拟器带的adb版本不一致导致的,到底是不是这样呢?我们来看一下:
先看看sdk中的ADB版本:


深度截图_选择区域_20210204175353.png

再看看模拟器的adb版本

深度截图_选择区域_20210204175700.png

从上图可以看到二者的adb版本确实不一致。怎么解决?很简单,把sdk中adb复制一份替换模拟器中的adb:

root@sf-PC:/opt/genymotion/tools# ls   //先看看看该目录下的adb
aapt  adb  glewinfo  lib64  nox_adb       //确实有adb
root@sf-PC:/opt/genymotion/tools# 
root@sf-PC:/opt/genymotion/tools# mv adb adb_backup  //先备份一下,以防后期用到
root@sf-PC:/opt/genymotion/tools# ls 
aapt  adb_backup  glewinfo  lib64  nox_adb  //再看一下,名字已经变成adb_backup
//将sdk中的adb复制过来
root@sf-PC:/opt/genymotion/tools# cp /media/sf/software/android-sdk/platform-tools/adb ./adb  
//可以看到已经复制过来了
root@sf-PC:/opt/genymotion/tools# ls
aapt  adb  adb_backup  glewinfo  lib64  nox_adb
//执行adb shell ,可以看到已经进来了。
sf@sf-PC:/opt/genymotion/tools$ adb shell
root@android:/ # 

至此,问题已解决。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容