前言

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自动化-adb offline(5037端口被占)的更多相关文章

  1. appium+python自动化40-adb offline(5037端口被占)

    前言 adb连手机的时候经常会出现offline的情况,一般杀掉adb,然后重启adb可以解决. 如果发现不管怎么重启adb都连不上,一直出现offlie的情况,这个时候很大可能就是adb的5037端 ...

  2. appium+python自动化-adb shell模拟点击事件(input tap)

    前言 appium有时候定位一个元素很难定位到,或者说明明定位到这个元素了,却无法点击,这个时候该怎么办呢? 求助大神是没用的,点击不了就是点击不了,appium不是万能的,这个时候应该转换思路,换其 ...

  3. appium+python自动化 adb shell按键操作

    前言 接着上篇介绍input里面的按键操作keyevent事件,发送手机上常用的一些按键操作 keyevent 1.keyevent事件有一张对应的表,可以直接发送对应的数字,也可以方式字符串,如下两 ...

  4. appium+python自动化-adb logcat查看日志

    前言 做app测试,遇到异常情况,查看日志是必不可少的,日志如何输出到手机sdcard和电脑的目录呢?这就需要用logcat输出日志了 以下操作是基于windows平台的操作:adb logcat | ...

  5. appium+python自动化-adb文件导入和导出(pull push)

    前言 用手机连电脑的时候,有时候需要把手机(模拟器)上的文件导出到电脑上,或者把电脑的图片导入手机里做测试用,我们可以用第三方的软件管理工具直接复制粘贴,也可以直接通过adb命令导入和导出. adb ...

  6. appium+python自动化-adb shell按键操作(input keyevent)

    前言 接着上篇介绍input里面的按键操作keyevent事件,发送手机上常用的一些按键操作 keyevent 1.keyevent事件有一张对应的表,可以直接发送对应的数字,也可以方式字符串,如下两 ...

  7. appium+python自动化61-中文输入乱码问题解决

    前言 在夜神模拟器上输入中文,发现是乱码,将unicodeKeyboard和resetKeyboard参数设置为True了,发现还是没法解决. 打开手机设置语言和输入法,发现找不到Appium And ...

  8. Appium+python自动化8-Appium Python API

    Appium+python自动化8-AppiumPython API   前言: Appium Python API全集,不知道哪个大神整理的,这里贴出来分享给大家. 1.contexts conte ...

  9. appium+python自动化52-多点触控MultiAction

    前言 MultiAction是针对多点触控操作的,是TouchAction的一个补充模块 TouchAction用法参考前面的一篇:appium+python自动化33-TouchAction 多点触 ...

随机推荐

  1. display flex在部分低级android中的支付宝窗口表现

    display flex用在移动端布局 当该元素是inline元素如span的时候回出现无宽高的情况,需要增加display:block: 他的子元素如果是inline元素那么也同样会出现这个问题,需 ...

  2. HashMap之put方法流程解读

    说明:本文中所谈论的HashMap基于JDK 1.8版本源码进行分析和说明. HashMap的put方法算是HashMap中比较核心的功能了,复杂程度高但是算法巧妙,同时在上一版本的基础之上优化了存储 ...

  3. 用java自带jdk开发第一个java程序

    [学习笔记] 1.用java自带jdk开发第一个java程序:   下面要讲的eclipse要想正常工作,需要先学会配置这里的jdk.jdk要想正常工作,需先学会配置JAVA_HOME和ClassPa ...

  4. Obj-C Memory Management

    Memory management is one of the most important process in any programming language. It is the proces ...

  5. fiddler+willow问题总结

    本文纯属用来记录自己学习过程中遇到的坑,如有朋友也遇到,可移步到这里查看是否为该问题导致. fiddler 安装不用说了,到官网直接去下载,自行下载最新版本 willow下载地址:http://qzo ...

  6. 设置umask

    umask 002 例子:umask为003,建立的文件与目录权限是什么? umask为003,所有去掉的属性为-------wx,因此 文件  -rw-rw-r-- 目录 drwxrwxr--

  7. sourceTree配置bitbucket

    1. 为github增加账号信息 选择添加远程库 选择添加一个账号 输入用户名: 按照提示输入密码 选择bitbuchet为默认 选中搜索克隆

  8. CPP-基础:windows api 多线程---互斥量、信号量、临界值、事件区别

    http://blog.csdn.net/wangsifu2009/article/details/6728155 四种进程或线程同步互斥的控制方法:1.临界区:通过对多线程的串行化来访问公共资源或一 ...

  9. struts1标签库

    Struts提供了五个标签库,即:HTML.Bean.Logic.Template和Nested. HTML标签 : 用来创建能够和Struts 框架和其他相应的HTML 标签交互的HTML 输入表单 ...

  10. rocketmq 命令示例

    http://www.360doc.com/content/16/0111/17/1073512_527143896.shtml http://www.cnblogs.com/marcotan/p/4 ...