adb运行异常的故障排除

总结几种adb运行幺蛾子解决办法,windows系统为例:

1.‘adb’不是内部或外部命令,也不是可运行的程序或批处理文件。

  这个简单,没有配置adb的环境变量,如果只用adb,把adb所在路径加入系统环境变量。建议配置ANDROID_HOME变量,很多自动化工具如appium'会要求配置这个变量。

2.adb server is out of date.  killing...

  这种情况一般是因为当执行输入的adb命令时,系统已经有其它版本的adb在运行了,adb运行会占用5037端口,当运行新adb进程会报错。

  而且现在的各种手机助手满天飞,QQ、360都自带迷你版的手机助手,而且他们一般都是自己修改了adb,然后换个名字,比如叫xxadb、xxhelper,都是adb换了个马甲。

  解决办法:

  先命令行执行where adb,确认PC只配置了一个adb

  命令行输入netstat -ano | findstr 5037,得到类似于以下的:

                
             最后一列是进程号, 记录下来,你的电脑可能有多行。
            然后再输入 tasklist | findstr  4348    (得到的进程号)  
               
               这样就能找到谁在占用了,用任务管理右击这个进程,看看这个adb进程是不是你配置的那个,如果不是,结束删掉,最好把这个adb的主程序(可能是360什么的)也卸载。
 3.明明有设备总是提示device not found
  1.设备是否开启了USB调试并且连接了PC
  2.adb驱动是否正确安装,安装成功后设备管理器应该能看到adb设备。
  如果以上确认无误,尝试手动添加设备的硬件ID,步骤如下:
    1.打开设备管理器,展开adb设备。
    2.右击设备,依次 "属性“—”详细信息“,下拉框选择”硬件ID“
    

    图中标记蓝色的4位16进制数就是VID号,记录下来。

    3.进入命令行,切换工作区到当前用户。

      命令行执行 pushd %USERPROFILE%

    4.将步骤2得到的硬件ID添加到adb_usb.ini

      命令行执行 echo 0x1234 >> .android\adb_usb.ini

      注:1234是得到的硬件ID,0x是16进制数前缀。

        adb_usb.ini也可以放在adb.exe的同级目录下。

 

4.总是提示device offline。

  1.一般情况下,如果设备之前正常,那么adb kill-server之后会恢复正常,再不行把设备和PC都重启。

  2.另一个可能是adb版本过低,例如adb1.0.26不能兼容android4.3以上设备,这种情况下可以通过SDK Manager更新下adb的版本。

5.总是提示unauthorized.

  1.adb kill-server,断开设备后重试。

  2.在设备的usb调试菜单中”撤销USB调试授权“

  3.删除%USERPROFILE%\.android目录中的adbkey和adbkey.pub。删除前注意备份,adb kill-server重启下adb。

  4.更新adb的版本。

转载于:https://www.cnblogs.com/mrleopard/p/9650811.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值