前言

adb连手机的时候经常会出现offline的情况,一般杀掉adb,然后重启adb可以解决。

如果发现不管怎么重启adb都连不上,一直出现offlie的情况,这个时候很大可能就是adb的5037端口被其它应用占了

offline

1.如果之前一直都能正常连上adb,突然连不上了,可以用adb devices查看手机连接情况

C:\Users\admin>adb devices
List of devices attached
* daemon not running; starting now at tcp:5037
* daemon started successfully
emulator-5554 offline C:\Users\admin>adb devices
List of devices attached
emulator-5554 offline

2.发现无法连上,出现offline。可以尝试adb kill-server,然后再用adb device查看

C:\Users\admin>adb kill-server

C:\Users\admin>adb devices
List of devices attached
* daemon not running; starting now at tcp:5037
* daemon started successfully
emulator-5554 offline

3.上面各种办法尝试了,都无法解决,接下来就要查看5037端口了

查看端口

1.windows上可以用findstr过滤进程(跟linux上grep指令一样),查询结果看最后一项PID,如果是0那就不用管,那最后就有两个PID占用了5037端口,

分别是6532和7200

netstat -aon|findstr 5037

C:\Users\admin>netstat -aon|findstr 5037
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 6532
TCP 127.0.0.1:5037 127.0.0.1:56975 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:56976 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:56981 ESTABLISHED 6532
TCP 127.0.0.1:5037 127.0.0.1:56988 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:56990 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:56991 TIME_WAIT 0
TCP 127.0.0.1:56981 127.0.0.1:5037 ESTABLISHED 7200

2.接下来就行查看PID,看是哪个应用占了

tasklist /fi "PID eq 端口号"

C:\Users\admin>tasklist /fi "PID eq 6532"

映像名称                       PID 会话名              会话#       内存使用
========================= ======== ================ =========== ============
adb.exe 6532 Console 1 18,432 K C:\Users\admin>tasklist /fi "PID eq 7200" 映像名称 PID 会话名 会话# 内存使用
========================= ======== ================ =========== ============
emulator-arm.exe 7200 Console 1 884,088 K

3.从结果可以看出,有两个应用占了,一个是adb本身,另外一个是模拟器(emulator-arm.exe),端口发生冲突了,接下来杀掉占用5037端口的进程

taskkill /pid 7200 /f

C:\Users\admin>taskkill /pid 7200
成功: 已终止 PID 为 7200 的进程。

在学习过程中有遇到疑问的,可以appium+python QQ群交流:330467341

最新文章

  1. js操作label,给label赋值,和取label的值
  2. [C#] Control.Invoke方法和跨线程访问控件(转载)
  3. 【小错误】ORA-00265: instance recovery required, cannot set ARCHIVELOG mode
  4. javascript高级程序设计---Event对象
  5. (转)linuxmint,ubuntu 下修改guake宽度方法
  6. 100 doors
  7. C++访问sqlite3实践
  8. js jquery 验证写法
  9. 2.Add Two Numbers-两个单链表相加
  10. wemall app商城源码Android短信监听接收器
  11. display与visibility的使用(区别)
  12. com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Column 'goodsName' cannot be null
  13. Jerry的碎碎念:SAPUI5, Angular, React和Vue
  14. 为什么HTTPS比HTTP更安全?
  15. 如何让vue自定义组件可以包裹内容,并且渲染出来,以及组件的组合使用
  16. 什么是“闭包”(closure)为什么要用它?
  17. Django 路由层(urlconf)
  18. 第一个Jsp页面,基于普元EOS
  19. 1.7Oob封装 继承 访问修饰符 静态和构造方法的执行顺序
  20. 以管理员身份运行 cmd 删除无权限删除的文件夹

热门文章

  1. wma wmv asf格式分析
  2. sql基础语法复习(二)-- 分组,连接的使用
  3. 【剑指offer】不分行从上到下打印二叉树,C++实现(层序遍历)
  4. Git详解之八 Git与其他系统
  5. 每天一个linux命令:【转载】ls命令
  6. JS 区分单击双击
  7. 使用 MSBuild 响应文件 (rsp) 来指定 dotnet build 命令行编译时的大量参数
  8. WampServer的配置
  9. 【angularJS】启动(bootstrap)机制
  10. LeetCode Permutation in String