为什么刷机后开发环境的adb不能用了,总是显示设备“offline”?

本文参考:http://blog.csdn.net/anod/article/details/18899075,http://jingyan.baidu.com/article/647f0115cd62977f2148a88d.html点击打开链接

用笔记本给手机刷了一次rom,结果,再用eclipse做android开发时就出现问题。

手机插上usb线,启动eclipse,和正常的情况下一样,能连接调试。但只要在命令行下用adb命令,直接提示adb server没启动,然后就自动启动adb server,但此时,所有设备显示“offlline”。看起来非常不合理。

分析了半天,同时也上网找了些帖子看,最后终于破案:

原因在于刷机程序向系统中拷贝了一个adb.exe,同时,每次系统引导是会启动它。而开发使用的adb.exe跟这个很显然不是一个。因此,在命令行下使用adb命令时就出现“服务没启动”。它也启动不了,因为监听端口被用了。这一点,可以通过使用“adb nodaemon server”可以看出来。

那么,解决办法就很简单了:

先找到占用端口的那个adb.exe在哪儿。在控制台用“netstat -ano”命令看一下谁用了“5037”这个tcp端口。输出结果的最后一列的数字“PID”就是它的标识。记住这个id,并且到任务管理器的进程列表里去找这个id。找到后在对应进程上点右键,找到装载进程的文件,这就是罪魁祸首了。在我的笔记本上,通过以上步骤找到了一个放在windows目录下的“adb.exe",看属性,显示数字签名是“ZTE COPORATION",也就是俺手机的生产商了。显然这是刷机的时候,刷机软件拷进去的。直接在任务管理器里把”adb.exe"干掉,然后把对应的文件删掉(adb.exe)。

回到控制台,再用“adb start-server”,把手机插拔一次就一切复原了。

至此,问题解决。最后吐槽下刷机软件。我都把你卸载了,还留一堆东西啊~~~~


如何查看pid 


  1.  先打开任务管理器,在任务栏上右键,选择弹出菜单中的“启动任务管理器”这一项。

    如何查看某个程序的进程ID
  2.       进入任务管理器之后,在“进程”这一项,找到百度云管理这个进程,如下图,找到了,但是没有这个进程ID,要如何办呢?

    如何查看某个程序的进程ID
  3.       任务管理器在默认下,是不显示进程ID的,需要通过设置,才能显示,设置方法,在“查看”菜单中,打开“选择列”。

    如何查看某个程序的进程ID
  4.       进入选择进程页列窗口,在第一项就是进程ID,会显示为PID,即process ID,将这一项勾选上,确定。

    如何查看某个程序的进程ID
  5.       返回到进程窗口,就会显示PID这一列,百度云管家的进程ID是484这一个。

    如何查看某个程序的进程ID
  6.       如何用命令关闭百度云管家呢?先从开始菜单中打开“运行”程序,输入cmd命令, 确定。

    如何查看某个程序的进程ID
  7. 8

          进入命令提示符窗口后,在光标闪动处,输入Tskill 484这个命令,回车即可关闭百度云管家这个程序。

    如何查看某个程序的进程ID
  8. 9

          还有一个方法查看进程ID,就是用命令查看法,同样打开命令提示符,在光标处,输入tasklist命令,确定。

    如何查看某个程序的进程ID
  9. 10

          就会列出所有当前运行程序的ID,如下图,在PID这一列,应用程序在“映像名称”这一列。

    如何查看某个程序的进程ID



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值