ADB支持两种连接Android系统的方式,USB方式及网络方式。一般手机及平板默认会设置为USB方式。
android系统底层运行着一个服务(adbd),用于相应和管理大家在电脑端的adb命令连接,
这个服务在启动时会根据手机的配置监听USB连接或网络其中之一。
配置的属性为:
service.adb.tcp.port <- 监听的网络端口
以上属性的值 > 0 : adbd将监听网络对应的端口(一般为5555)
以上属性的值 <=-1: adbd将监听USB

所以默认情况下 我们 的android设备开启开发者选项以及usb调试之后,默认是可以 adb devices 看到设备的,看到设备之后 直接 adb shell即可

但是如果我们想 开启wifi 进行adb调试的话,得做到如下:

1. 关闭pc电脑端的防火墙

2. 配置手机端 service.adb.tcp.port =0(配置的工具可以用 adbwireless 或者airdb),于是有了下面的文章


Android开发无线调试工具adbwireless的使用简介(附AirADB)

JanRisun 关注

2017.01.11 16:22* 字数 1534 阅读 4506评论 4喜欢 15

adbWireless能够让手机用无线来取代USB连接而使用ADB工具
手机需要root并且与电脑在同一局域网内(可以连同个路由或者电脑开WiFi给手机连接)
ADB(Android Debug Bridge)是Android提供的一个通用的调试工具,借助这个工具,我们可以管理设备或手机
模拟器的状态。还可以进行以下的操作:
1、快速更新设备或手机模拟器中的代码,如应用或Android系统升级;
2、在设备上运行shell命令;
3、管理设备或手机模拟器上的预定端口;
4、在设备或手机模拟器上复制或粘贴文件;
注:本文参考资料会在文章最后注明。文中不足之处,欢迎批评指正!

前言

手机没有升级之前是5.0的系统,当时就在用adbwireless工具进行无线调试。手机升级到了6.0系统,权限管理已经改变,adbwireless又长久没有更新,导致手机即使root之后仍然不能够进行无限调试,报错:unable to connect to 192.168.1.131:5555: cannot connect to 192.168.1.131:5555: 由于目标计算机积极拒绝,无法连接。 (10061)。起初以为是权限问题,就去github上把项目clon到本地,添加了6.0权限,运行之后错误不变。多方求索,通过设置手机默认的ADB连接方式可以解决该问题(后面会讲到)。搞定后,决定码字分享一波,写到最后,在别的相关资料里发现了更好用的无线调试工具(手动大写尴尬),我会一并分享出来,嘤嘤嘤嘤……(白忙活了Orz)。有兴趣的就往下看一下,只是寻求一个无线调试的工具的话,工具下载下来就好了,无线调起来吧(XX,根本停不下来)!第一次发文,多多指教!

adbwireless下载地址
adbwireless下载地址(写入了6.0权限) 提取密码:mwb1
AirADB下载地址

ADB的配置

手机下载安装好adbwireless之后,在电脑上配置ADB(已安装的可跳过该步骤)

  1. 在Sdk里找到adb.exe,复制其所在路径C:\Users\Maven\AppData\Local\Android\Sdk\platform-tools
 
adb路径.png

如果不记得Sdk文件目录,可以在Android Studio的设置里进行查看
File>>Settings>>Appearance&Behavior>>System Settings>>Android SDK

 
sdk路径.png
  1. 配置ADB环境变量
    右键我的电脑>>属性>>高级系统设置>>环境变量
    在系统变量(s)里找到Patch,选择编辑。将ADB所在的目录复制进去,注意用“;”与其他变量分隔开
 
环境变量.png
  1. 检测ADB是否配置成功
    打开命令行窗口(windows键+R)
    输入指令'adb devices'
    如下图所示,则说明配置成功
 
cmd.png

无线调试

接下来就是见证奇迹的时刻

  1. 打开adbwireless(已获取root权限),界面显示当前设备的ip地址;
 
adbison.png
  1. 打开Android Studio控制台的Terminal,输入adbwireless界面显示的指令
    adb connect 192.168.8.101,
    输出 connected to 192.168.8.101:5555则表示连接成功。接下来开始无线调试之旅吧,跟USB连接无差别。
    同样的你也可以直接在命令行窗口输入以上指令,也是可以连接成功的。
 
terminal.png

注:下次要用时只需要把手机和电脑连同个局域网,手机打开adbwireless,电脑在命令提示符里执行"adb connect xxx.xxx.xxx.xxx"(xxx.xxx.xxx.xxx为adbwireless显示的ip地址)就行了。

异常的处理

  1. error: cannot parse version string: kg01
    出现这个错误先在环境里看下adb的路径对不对,如果没错就在任务管理器里把adb.exe,或kadb.exe结束掉,然后重新执行adb connect xxx.xxx.xxx.xxx命令就行

  2. 如果是adbwireless上的IP地址是adb connect 0.0.0.0的话,把adbwireless关掉,重新启动一下

  3. unable to connect to 192.168.1.131:5555: cannot connect to 192.168.1.131:5555: 由于目标计算机积极拒绝,无法连接。 (10061)
    出现这个错估计是手机root了,但是没有授权给adbwireless,下载个root的授权管理。然后给adbwireless授权。再重新连接就行
    如果以上方法不能解决问题,试着切换一下ADB连接手机的方式

ADB支持两种连接Android系统的方式,USB方式及网络方式。一般手机及平板默认会设置为USB方式。
android系统底层运行着一个服务(adbd),用于相应和管理大家在电脑端的adb命令连接,
这个服务在启动时会根据手机的配置监听USB连接或网络其中之一。
配置的属性为:
service.adb.tcp.port <- 监听的网络端口
以上属性的值 > 0 : adbd将监听网络对应的端口(一般为5555)
以上属性的值 <=-1: adbd将监听USB

具体设置方法(手机需要与电脑连接)

  1. enable adb over wifi:
    adb tcpip 5555 //在与手机相连的电脑上执行

  2. 重新连接就可以了。

注:关闭无线调试的指令为 ’adb disconnect xxx.xxx.xxx.xxx‘需要手动切换ADB的连接方式(6.0以上),如果懒得每次在手机上敲命令,可使用这个工具AirADB,直接一键设置,并支持开机自动设置!! 需root权限!附上AirADB的主页面

 
AirAdb.png

参考资料

slightlywobbly/github
Android studio使用adbwireless实现WiFi调试
ADB连接手机的两种方式
Android 网络调试 adb tcpip 开启方法

adb调试android设备 说的比较清楚的一篇文章的更多相关文章

  1. 如何通过Chrome远程调试android设备上的Web网站

    网上的帖子很多,但很多都是老版本的,试过了,根本不管用,花了一天时间,终于在本机试验通过了,特记录下来,以备用.有需要的朋友也可以参考.先上一张图,看看PC端chrome上调试的效果: 左边是手机的模 ...

  2. 远程调试 Android 设备使用入门(谷歌翻译版)

    移动前端调试方案(Android + Chrome 实现远程调试) 目录 要求 第 1 步:发现您的 Android 设备 第 2 步:从您的开发计算机调试 Android 设备上的内容. 更多操作: ...

  3. adb使用wifi无线连接调试Android设备

    先上官方原文: Wireless usage adb is usually used over USB. However, it is also possible to use over Wi-Fi, ...

  4. Android配置----小米手机通过wifi连接ADB调试Android应用

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...

  5. 在桌面chrome中调试android设备中的web页面

    准备工作 1, 桌面版chrome 2, Android设备(安装有chrome浏览器) 3, Android-sdk Android-sdk安装及设置 SKD安装 从http://developer ...

  6. WIFI无线adb调试android

    有个需求需要支持android插上键盘,鼠标等外设,但是这样就不能使用microusb口进行adb调试了. 研究了一番,发现可以利用wifi进行adb无线调试(adb应该本身已经支持无线调试). WI ...

  7. 通过WifI开发调试Android设备

    前言:使用的windows系统,为了可以通过wifi可以直接连接android设备调试,尝试使用以下方法一.使用ADB USB to WIFI 一直不成功. 二.使用命令行方式 1.进入android ...

  8. chorme浏览器调试Android设备

    Android设备开启开发者模式,并打开USB调试: 接着在Android设备上运行项目 在chrome浏览器打开F12: 在Remote devices里即可调试页面. ! 一般需要FQ

  9. Android设备adb授权的原理【转】

    本文转载自:http://blog.csdn.net/zahuopuboss/article/details/50831171 http://blog.csdn.net/sowhat_ah/artic ...

随机推荐

  1. drop redo logfile current报错

    目的:在安装完毕11.2.0.4版本Oracle单实例数据库后,对日志进行格式化,删除原日志组current状态,删除报错 #对于理论学习,而带来的理解命令,因此作为记录 #查询日志状态SYS > ...

  2. Samsung_tiny4412(驱动笔记02)----ASM with C,MMU,Exception,GIC

    /**************************************************************************** * * ASM with C,MMU,Exc ...

  3. Java中的容器 I————浅谈Queue和PriorityQueue

    一.Queue的实现 通过LinkedList类实现Queue接口来完成对Queue的实例类的实现,代码如下: Queue<Integer> queue=new LinkedList< ...

  4. 【Java】身份证号码验证

    代码引用自:https://gitee.com/appleat/codes/ynrtqujv0wfgesm8ia9b547 package xxx; /** * Created by wdj on 2 ...

  5. CSS3 transform变形(2D转换)

    transform 属性应用于2D 或 3D 转换.该属性允许我们对元素进行平移.旋转.缩放或倾斜. 一.translate(x,y).translateX(n).translateY(n)定义2D平 ...

  6. annotation注释简单介绍

    元数据的作用 如果要对于元数据的作用进行分类,目前还没有明确的定义,不过我们可以根据它所起的作用,大致可分为三类: l         编写文档:通过代码里标识的元数据生成文档. l         ...

  7. 关于js的面相对象

    http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_encapsulation.html

  8. 字符串转json格式

    方法一:var json = JSON.parse(str)方法二:eval

  9. Go Example--结构体

    package main import "fmt" //定义一个私有结构体 type person struct { name string age int } func main ...

  10. pghoard 面向云存储的pg 备份&&恢复工具

    pghoard 面向云存储的pg 备份&&恢复工具 包含的特性 自动定期basebackup 自动事务日志(WAL / Xlog软件)备份(使用pg_receivexlog, arch ...