引言:最近需要用到ADB来进行电脑与手机的交互,可谓刚起步就处处碰壁,下面是以我个人遇到的一些错误,总结出的一点经验
首先我在这分两种情况,一是普通使用单台Android设备的,二是有用到其他Android设备群控的
adb相关驱动问题:
首先,我们需要正确安装ADB/Fastboot驱动。一般来说,Win10联网的话,会自动安装ADB和Fastboot驱动,并不需要用户担心。如何让Win10自动安装ADB驱动?安卓机开启USB调试后连接到电脑,就会自动安装了。如果Win10网络情况不好,或者其他一些原因,没有自动安装好ABD/Fastboot驱动,就需要手动安装了。Google官方的驱动可以点此下载(需要外网)。除了Google官方驱动外,这款第三方的“Universal Adb Driver”(点击下载)也是可以一试的。
adb的安装 :
情况一(单设备):
软件名称: | adb工具包 |
软件版本: | 1.0.32 |
软件大小: | 608KB |
软件授权: | 免费 |
适用平台: | Win2000 WinXP Win2003 Vista Win8 Win7 |
下载地址: | http://dl.pconline.com.cn/download/359035.html |
在Win10中,系统目录和之前有所不同,所以旧的安装方法是无效的。要如何在Win10使用ADB工具呢?其实很简单,进入解压出来的文件的那个文件夹,键盘按住“Shift”键,然后鼠标右键单击文件夹的空白处。这时候,就可以看到弹出的菜单,有一个“在此处打开命令窗口”的选项,点击它!然后,就可以看到CMD弹出来了。
◆将名称中含有adb的文件,和fastboot.exe复制到 c:/windows/system32目录
◆将名称中含有adb的所有文件复制到 c:/windows/system目录
情况二(有群控):无需再安装,群控安装路径已到adb相关应用
下面来说说我遇到的问题:
1.再CMD窗口输入 adb devices 出现
adb server is out of date. killing... ADB server didn‘t ACK * failed to start daemon *
解决方法:
情况一(单设备):将C:\Windows\System32目录下的adb.exe复制到C:\Windows\SysWOW64下再次尝试,
如果不行,看看C:\Windows\SysWOW64 目录下有没有 AdbWinApi.dll ,如果没有就再从C:\Windows\System32中复制一个过来,若无反应输入以下指令
adb kill-server
adb start-server
若还无反应就到任务管理将adb.exe结束任务再重启,若还是无反应,那么就可能是adb被其他程序占用了,这里可以参考情况二解决方案
注:情况二可直接忽略灰字部分,主演看黑字部分
情况二(有群控):在有群控的情况下出现这种问题,多半是adb已经被群控下的adb使用了,而你直接在cmd输入adb指令使用的并非群控的adb
这种情况可以现尝试关闭占用adb的进程,输入cmd指令
adb nodaemon server
这时我们得到adb端口号为“5037”
在输入cmd指令
netstat -ano | findstr "5037"
我们可以得到占用进程PID为8364(如下图)
在输入cmd指令
tasklist | findstr "8364"
就可已看到占用应用的名称,这里如果不为adb.exe,那么可用输出CMD指令:(taskkill /f /t /im 应用名称 或 taskkill /f /pid 程序的PID) 来关闭该应用,或直接进入任务管理器关闭该应用
如果是adb.exe,那么你直接进入任务管理器,找到adb应用,右键->打开文件所在位置,这是就可以知道,是谁在占用adb了。
此时将该路径位置,复制到环境变量里并置顶,在使用adb命令即可
总结:到这里,这基本问题都解决了,剩下的就是如何去使用adb指令了,这次问题参考了许多有用的文章,改写这些作者,这里我将质量较为更好的文章链接放在下方,各位可以自行前往阅读查看
该文章参考:CSDN-crazycr CSDN-liranke 博客园-测试那些事
Windows通过USB连接使用ADB实现交互端口占用情况解决
原文:https://www.cnblogs.com/Kirito-Asuna-Yoyi/p/Android-ADB1.html