Android Studio 启动时adb报错端口被占用

Android Studio 启动时adb报错端口被占用

问题:刚下载完Android Studio,配置完所有的东西,要来启动程序时,碰到adb端口被占用的问题

Java.lang.RuntimeException: Unable to create Debug Bridge: Timed out attempting to connect to adb: * daemon not running; starting now at tcp:5037
* daemon started successfully
Connected to adb for device monitoring
Sending Tracking request failed!
Adb connection Error:远程主机强迫关闭了一个现有的连接。
Cannot reach ADB server, attempting to reconnect.

解决方法:
首先,你需要在命令提示符(cmd)查看一下5037端口号被什么占用

netstat -ano | findstr 5037

显示

C:\Users\13570>netstat -ano | findstr 5037
  TCP    127.0.0.1:5037         0.0.0.0:0              LISTENING       7724
  TCP    127.0.0.1:5037         127.0.0.1:52314        ESTABLISHED     7724
  TCP    127.0.0.1:52314        127.0.0.1:5037         ESTABLISHED     10048

根据查找结果第五列中的PID号去到任务管理器 —> 详细信息或服务,查找对应PID的程序。如果是被studio之外的程序所占用,停掉即可;如果只有studio一个程序占用,则是adb开启异常。
adb开启异常的情况,去到SDK目录下的platform-tools(如:D:\SDK\platform-tools),在这个目录下进入cmd,输入:adb start-server。
如果显示:‘abd’ 不是内部或外部命令,也不是可运行的程序
或批处理文件。
是因为你并不是在…\SDK\platform-tools
这个位置进入的cmd。你需要在这个地址下进入才不会报错,或者配置adb的环境变量,在Path内编辑(如:D:\SDK\platform-tools),之后在开启cmd手动输入adb start-server开启adb。

<think>好的,用户遇到了ADB报错“device not found”的问题,需要帮助解决。首先,我得确认常见的可能原因。通常,这个问题可能有几个方面:设备未连接、USB调试未开启、驱动问题、ADB版本不兼容或者端口冲突。 第一步,应该检查设备是否通过USB正确连接。有时候数据线可能有问题,或者USB端口接触不良。建议用户换一根线或换一个USB口试试,同时确保设备没有仅处于充电模式,而是文件传输或MTP模式。 接下来,需要确认USB调试是否已经打开。很多用户可能不知道开发者选项需要多次点击版本号才能激活,或者在连接时没有允许调试授权。如果设备之前连接过,可能授权弹窗被误点了拒绝,这时候需要撤销USB调试授权,重新连接触发授权提示。 然后,设备驱动的问题也很常见。尤其是在Windows系统上,可能需要手动安装Google USB驱动,或者更新现有的驱动程序。用户可以通过设备管理器查看是否有未识别的设备,或者ADB Interface是否存在,没有的话可能需要安装驱动。 ADB版本过旧也可能导致无法识别新设备,所以建议用户更新到最新版本的Platform Tools。此外,有时候ADB服务器可能出现问题,需要重启ADB服务,执行adb kill-server和adb start-server命令。 还有可能是端口冲突,比如其他程序占用5037端口,但这种情况相对少见。用户可以通过netstat命令检查端口占用情况,并结束相关进程。 如果以上步骤都尝试过,还是有问题,可能需要检查设备是否被其他软件占用,或者尝试不同的电脑排除硬件问题。最后,如果所有方法都无效,可能需要考虑设备本身的硬件故障,不过这种情况比较少见。 在回答时,需要分步骤说明,让用户一步步排查,避免遗漏。同时要使用清晰的中文,避免专业术语过多,必要时解释操作步骤,比如如何打开开发者选项,如何进入设备管理器等。确保用户能理解并跟随操作,解决问题。</think>遇到ADB报错`error: device not found`时,通常是由于设备连接或配置问题导致。以下是逐步排查和解决方法: --- ### **第一步:检查物理连接** 1. **确认USB线正常** - 更换数据线(部分线仅支持充电,不支持数据传输)。 - 尝试不同USB接口(避免接口接触不良)。 2. **设备连接模式** - 手机需设置为「文件传输」或「MTP模式」(非「仅充电」模式)。 --- ### **第二步:开启开发者选项与USB调试** 1. **启用开发者选项** - 进入手机设置 → 关于手机 → 连续点击「版本号」7次。 - 返回设置 → 系统 → 开发者选项 → 开启「USB调试」。 2. **授权调试请求** - 首次连接电脑时,手机会弹出「允许USB调试吗?」提示,勾选「始终允许」后确认。 --- ### **第三步:检查设备驱动(Windows用户)** 1. **查看设备管理器** - 右键「此电脑」→ 管理 → 设备管理器。 - 检查是否有带感叹号的「Android设备」或「未知设备」。 2. **手动安装驱动** - 下载官方驱动:[Google USB Driver](https://developer.android.com/studio/run/win-usb)。 - 在设备管理器中右键未识别的设备 → 更新驱动 → 手动选择驱动目录。 --- ### **第四步:重启ADB服务** 1. 关闭当前ADB进程: ```bash adb kill-server ``` 2. 重新启动ADB: ```bash adb start-server ``` 3. 查看设备列表: ```bash adb devices ``` - 正常情况应显示设备序列号及`device`状态。 --- ### **第五步:检查ADB版本** - 旧版ADB可能不兼容新设备,建议更新至最新版本: - 下载最新[Platform Tools](https://developer.android.com/studio/releases/platform-tools)。 --- ### **第六步:排查端口冲突** - ADB默认使用5037端口,若被占用会导致异常: ```bash netstat -ano | findstr "5037" ``` - 结束占用进程(通过任务管理器或`taskkill /pid <PID> /f`)。 --- ### **第七步:其他可能原因** 1. **设备系统问题** - 重启手机和电脑。 - 部分厂商需单独开启「OEM解锁」或「ADB调试权限」。 2. **尝试其他电脑** - 排除当前电脑环境问题。 --- ### **总结流程** ```mermaid graph TD A[ADB报错 device not found] --> B{物理连接正常?} B -->|否| C[更换数据线/USB口] B -->|是| D{USB调试已开启?} D -->|否| E[开启开发者选项/USB调试] D -->|是| F{驱动正常?} F -->|否| G[安装/更新驱动] F -->|是| H{ADB服务正常?} H -->|否| I[重启ADB服务] H -->|是| J{ADB版本过旧?} J -->|是| K[更新Platform Tools] J -->|否| L[检查端口冲突] ``` 按以上步骤排查后,90%以上的问题可解决。若仍无法连接,可能是设备硬件故障(如USB接口损坏),建议联系厂商售后。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值