【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法

摘要:
单击结束进程把它结束了,然后再运行adbconnectserverIP成功运行。我的是mibileLoader不能被禁用,删除了还会恢复,一直占用5037端口,导致手机和电脑无法连接.通过adb调试手机都没办法进行了,卸载360了.二、如果上面的还是不能解决:每当我尝试运行时adbdevices:$adbdevices*daemonnotrunning.startingitnow**daemonstartedsuccessfully*ListofdevicesattachedHT0ANRV05740device它说守护进程没有运行并重新启动守护进程。今日查到stackoverflow上一个帖子:http://stackoverflow.com/questions/5092542/adb-server-is-out-of-date答主真是一针见血。。把genymotion的adb设置为自己的adb之后,问题解决了。

原文:https://blog.csdn.net/gufenchen/article/details/91383397

一、有时候我们用adb工具去连接安卓设备,或者模拟器的时候,会提示adb server version(31) doesn’t match this client(40)这样的提示。如图

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第1张

提示的字面意思就是当前client版本40,与server端的版本不匹配,当前版本过高引起的。注意,这里的client就是你电脑已经安装的adb程序的版本,而server,也就是你的服务端,将要connect的设备。网上说出现这种不匹配只要下载对应的adb版本重新替换你之前安装的adb就行了,对应的android studio 路径就是你的android sdk 目录的platform-tools文件夹里面的adb.exe程序。

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第2张

然而事实上却并非就解决问题。这是因为你的电脑安装了,鲁大师手机助手,360手机助手占用了adb的端口引起的。因为套接字的唯一性(一个套接字只能由 协议/网络地址/端口号 唯一确定 ),一个电脑只能有一个程序关联对应的端口,对于adb对应的端口就是5037。为了验证你的5037端口是否被占用,可以用netstat -ano|findstr “5037” 去查找5037对应的端口号的进程id 也就是pid。

如果有相应的pid,就证明此端口5037有程序占用了。如下图

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第3张
果然,5037端口有相应的进程,我们试着去查找相应的进程对应的进程名称,用tasklist |findstr “15828” 结果如下图

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第4张

果然,我们找到了一个进程名字,看名字似乎是ludash的拼音缩写开头的,这时候去检查一下你电脑的运行程序,哎呦,还真有一个鲁大师手机助手正在运行,就是它害的我们的adb运行不了,所以我们果断打开进程管理器结束这个进程,如下图。

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第5张

单击结束进程把它结束了,然后再运行adb connect server IP 成功运行。

我的是mibileLoader不能被禁用,删除了还会恢复, 一直占用5037端口, 导致手机和电脑无法连接.
通过adb 调试手机都没办法进行了, 卸载360了.

二、如果上面的还是不能解决:

每当我尝试运行时adb devices:

$ adb devices
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
HT0ANRV05740 device
它说守护进程没有运行并重新启动守护进程。

然后,如果我再次运行adb设备,它会做同样的事情 -

$ adb devices
adb server is out of date. killing...
* daemon started successfully *
List of devices attached
HT0ANRV05740 device
然后,如果我再次运行它,它再次做同样的事情 -

$ adb devices
adb server is out of date. killing...
* daemon started successfully *
List of devices attached
HT0ANRV05740 device
从网上查到,需要在命令行运行以下shell命令获取deviceName

adb devices -l
然而输入回车后,出现以下错误

C:Userswuhuo>adb devices -l
adb server is out of date. killing...
ADB server didn't ACK
* failed to start daemon *
error:
朋友叫我输入adb start-server,结果是这样婶儿的

adb server is out of date. killing...
ADB server didn't ACK
* failed to start daemon *

网上查了是因为端口有冲突,有其他进程占用了5037这个端口。(可以用adb nodaemon server 这个命令查看端口)

解决方法:

用以下命令查看5037端口号的应用

netstat -ano | find "5037"
从左至右依次是连接类型、本地地址:端口、外部地址:端口、连接状态、进程的PID
个人理解,应该杀掉的是本地端口为5037的那个进程。(20170319注:看过多个别人杀进程的帖子,证实想法正确)

看最后一列获得进程的PID,常规方法是使用以下命令杀掉它:

taskkill /pid xxx
但对于我的情况来说,杀完再find,它又出现了,喵喵喵?而且再细看一下,这些进程全部都是genymotion目录中tools文件夹下的adb.exe,按我的理解不该杀啊。

(20170320注:实际上很多软件都包括adb.exe,像豌豆荚及各种手机助手。如果它们启动了,也会占用这个端口。信息来自网上找到appium视频教程)

因为已经深夜了,第二天继续研究。今日查到stackoverflow上一个帖子:

http://stackoverflow.com/questions/5092542/adb-server-is-out-of-date

答主真是一针见血。。把genymotion的adb设置为自己的adb之后,问题解决了。

Genymotion默认用的是第一个选项,现改为custom,然后选择自己的sdk文件夹

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第6张

选择Setting,

找到ADB,点击

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第7张

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第8张

选择第二个:Customer Android SDK tools:,选择SDK的文件夹,

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第9张

再输入adb devices -l,

【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法第10张

————————————————
版权声明:本文为CSDN博主「白清羽」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/gufenchen/article/details/91383397

免责声明:文章转载自《【转】解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇高清摄像头MIPI CSI2接口浅解【转】回环检测下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

软件开发版本管理阶段描述

目录: 软件阶段 版本命名规范 补充 软件阶段 软件开发过程中,势必会有开发、测试、发行各阶段的版本管理以及产品命名规范的依据,各公司虽有不一,但都大同小异。 一般软件发行版本有:Alpha版 -> Beta版 -> RC版 -> Release版 ・ Alpha版本: 内部发行版。首先由开发者进行功能自测试,检验产品功能的完整性、...

SCSF智能客户端学习笔记(一)

什么是智能客户端   要了解智能客户端,首先要认识瘦客户端技术和胖客户端技术各自的优缺点。        对于前者,典型的应用就是使用浏览器,通过输入URL远程访问服务端,并向服务端发送命令,获取服务端的资源,然后在客户端的浏览器上显示出来。由于这种技术数据库存放在服务端,客户端应用界面的也是由服务端的文件生成,因此在客户端上占用资源少,对客户端的设备要求...

Docker从入门到放弃

  为什么要学习 docker 呢?深有体会,由于一些原因只能在他人电脑上搭建环境,明明在自己电脑上的程序跑的好好的,在他人的电脑上就是死活出错。折磨人呀!!!!!可是能怎么办,工作还得继续,曲线救国呗,折腾了一天终于搞好了,那么以后呢?想到了之前搭建靶机时候用到的docker,时间长了也忘了,准备好好梳理学习入门一波。《十分感谢大神的文章,本文基于大神的...

WinForm下窗体权限设计

权限设计 笔者不才看了园子里面很多园友写关于权限设计这块内容,那么笔者也在添一笔。这个是笔者在上完软件工程课程后,上交的一篇笔者论文,这里分享给大家交流,当然笔者经验尚浅,若内容有误,请大家指点出来,若大家有什么更好的想法,请提出来共同学习。 一.引言 在软件开发中, 从操作系统到一个仅仅能够发布文章的网站,都要涉及到权限的管理。在Windows 操作...

revit添加族参数

打开一个族文件,并为族文件添加参数 public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements){try{UIApplication uiApp = commandData.Application;Autodesk.Revit....

Nmap 扫描器的使用技巧

1.nmap语法  -A 全面扫描/综合扫描   例如:nmap -A 127.0.0.1  扫描指定段   例如:nmap 127.0.0.1-200&nmap 127.0.0.1/24 2.Nmap 主机发现  -sP   -sP ping扫描   例如:nmap -sP 127.0.0.1  -P0   -P0 无pin...