当前位置:   article > 正文

adb命令(一)_android adb inteface 和 android

android adb inteface 和 android

个人学习笔记(整理不易,有帮助点个赞)

笔记目录:学习笔记目录_pytest和unittest、airtest_weixin_42717928的博客-CSDN博客

目录

一:简介

二:adb组成

三:连接方式


一:简介

ADB(Android Debug Bridge)是android sdk的一个工具,简单的说,就是连接安卓手机与PC端的桥梁,用户可以在PC端对手机进行操作。

二:adb组成

adb是一个C/S架构的命令行工具

1)客户端client:运行在电脑上, 可以通过adb命令来调用起一个客户端。

其他Android工具, 例如ADT插件、DDMS都可以创建出一个客户端

2)服务器server:运行在电脑的后台, 负责管理client和daemon进行通信,即adb.exe

3)守护进程daemon:运行在模拟器或者Android设备的后台。
 

(简单说:你输入adb其实就是启动了客户端,它会检查这台计算机有没有启动adb服务,如果没启动,它会帮你启动,然后服务器启动后会与本地TCP端口5037绑定,且侦听从adb客户端发送的命令(所有的adb客户端都使用5037端口与adb服务器通信))

三:连接方式

一种是去下载sdk压缩包;另一种是直接安装Android Studio,它自带adb

如果已安装了Android Studio,它本身带有adb命令,如果配置好的Android Studio 一般都是可以直接调用adb命令的;

如果不行,比如

找到adb在SDK里的绝对路径,放入环境变量path中(绝对路径不带入adb.exe)

我的是这个

可以查看一下版本,看看是否安装

方式一:

直接拿安卓手机通过数据线连接到电脑,

而且要打开开发者模式(我这里用Coolpad作为一个例子,在版本号点两次就进入开发者模式了)和USB调试

通过命令查看手机是否已经连接上电脑了

结果可能有三种:offline:设备连接异常;device:正常;unknown:没有连接设备

我有遇到这种情况

去进程杀了adb这个干儿子就行了,然后输入adb devices会看到手机有是否允许认证这种信息

方式二:

如果手机连不上电脑,可以通过手机模拟器来模拟手机,我安装的是夜神模拟器

  1. adb connect ip:端口号
  2. //我的是本机,所以是127.0.0.1,夜神的端口是62001

把夜神启动

查看一下,可以看到右键成功连接

附加:

(1)端口占用

参考:解决:adb 提示adb server version(31) doesn't match this client(41) 解决办法_adb server version dont match-CSDN博客

如果启动发现

输入adb nodaemon server命令,查看现在端口是否被正常使用

发现还是被占用,要找到被占用的端口

输入netstat -ano | findstr "5037"

从左至右依次是连接类型、本地地址:端口、外部地址:端口、连接状态、进程的PID

杀掉的是本地端口为5037的那个进程

可以看到一个11228,应用ID

输入tasklist | findstr "11228"查看是谁在占用

然后去任务管理器输入adb,可以看到相应的进程,杀掉就行了

(2)设备找不到

这里我使用的是Android Studio和真机

百度了很多方法,说的不清不楚,没头没尾,直到看到这个后才有了一点思路

参考:adb devices 找不到设备的解决方法_没有android composite adb interface-CSDN博客

以下是我自己操作的一些过程

1:设备是否开启开发者usb调试模式

我看到手机的开发者模式和开发者选项中的USB调试都开着,电脑显示这个,我觉得没问题

2:设备管理器是否显示android adb interface或者Android Composite ADB Interface

(我发现设备管理器没这个东西,而且好像这个东西是在Android phone这个选项里面的,我发现Android phone也没有)

(我也发现我的设备显示,还有一个ADB Interface显示了个感叹号,于是我觉得这应该是问题,于是对这个问题再次百度)

参考:https://www.jianshu.com/p/e0b366b1560a

双击ADB Interface-更新驱动程序

从磁盘安装-选中在AndroidSDK中usb_driver目录下的android_winusb.inf文件

(在这里我发现我的SDK目录下没有usb_driver这个文件夹,于是我针对这个问题再次百度)

参考:android Studio调试出现USB device not found怎么办?_编程开发_软件教程_脚本之家

我在SDK目录下双击SDK Manager.exe这个程序,然后把usb_driver给安装了,然后就有这个目录了

回到之前那一步,选择AndroidSDK中usb_driver目录下的android_winusb.inf文件

弹出警告,点击是就行了

然后就看到Android phone这个东西出现了,之前那个ADB Interface没有了

再查一次,设备信息也出现了

(3)cannot not connect to 127.0.0.1:62001:由于计算机积极拒绝,无法连接。 10061

我出现这个问题是在我新建了一个4版本的模拟器(在之前已经有5.1版本的),连接4版本的时候出错的

解决方法:

可能是因为cmd下的adb版本与夜神模拟器中的bin路径的adb版本(nox_adb)不一致导致的,这时需要将cmd下的adb版本拷贝一份到 夜神模拟器的bin的目录下,记得改名为“nox_adb”,覆盖夜神的nox_adb(最好备份一下),重启夜神模拟器就行。

我刚刚开始连接不行,还是输入cannot not connect to 127.0.0.1:62001,于是重启电脑,我先试试之前版本能不能,发现ok

于是我关掉再试4版本,发现不行,于是adb devices,发现其实有的,其实端口号不一样了,怪不得连接不上

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/287639
推荐阅读
相关标签
  

闽ICP备14008679号