zoukankan      html  css  js  c++  java
  • 如何解决adb卡死,命令不返回的问题

    今天在使用adb命令时发生一个奇怪的现象,所有 adb命令全部卡死不返回,包括adb kill-server。

    记录一下我的解决过程,再遇到类似的情况可能原因差不多。


    1. 最先怀疑 5037端口被占用,tcpview看了一下,发现端口没有被占用。

    2. 再怀疑是不是adb的驱动出问题了,用ADBDriverInstaller也查看了,没有问题,如下图

        image

    3. 怀疑我的手机是不是有问题,用其它的PC试了一下,可以正常操作,说明还是我的PC的问题

    4. 最后用procexp查看进程及线程,看看卡在哪儿了,首先发现一个dll,引起我的怀疑,如下图:

        image

        我感觉八成是上图中 “ASProxy.dll” 搞的鬼,在仔细看一下线程栈确定一下。

        image

        初步确认是ASProxy.dll引起的,这个dll是AStrill当中的,一个翻墙软件。
        卸载后再试试,一切就好了。

       AStrill 用这种方式做代理虽然能兼容很多的软件,但是也会引起很多错误。

       几年前我用golang编译出来的程序就与AStrill冲突过,今天又来了。
       使用AStrill最安全的办法就找机器单独安装,使用者配一个http的代理就可以了,这样最干净。




    最后再多说一句关于 ASProxy.dll,这个dll其实是一个 SPI,它可以注入到每一个使用网络的进程中去,再来一张图:


    image

    就是这么的,可以让ASProxy.dll注入到adb的进程中,从而影响了adb的正常运行。

  • 相关阅读:
    SpringFramework|@Autowired
    SpringFramework|@Required的使用
    SpringFramework|基于XML的两种自动装配
    SpringFramework|基于XML的各类集合注入
    SpringFramework|基于XML的依赖注入
    erlang vim
    svn 强制输入提交日志
    vim配置
    克隆centos6后配置网络
    git 免密
  • 原文地址:https://www.cnblogs.com/russinovich/p/12250168.html
Copyright © 2011-2022 走看看