博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android开发无线调试工具adbwireless的使用简介(附AirADB)
阅读量:6817 次
发布时间:2019-06-26

本文共 2388 字,大约阅读时间需要 7 分钟。

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)。起初以为是权限问题,就去上把项目clon到本地,添加了6.0权限,运行之后错误不变。多方求索,通过设置手机默认的ADB连接方式可以解决该问题(后面会讲到)。搞定后,决定码字分享一波,写到最后,在别的相关资料里发现了更好用的无线调试工具(手动大写尴尬),我会一并分享出来,嘤嘤嘤嘤……(白忙活了Orz)。有兴趣的就往下看一下,只是寻求一个无线调试的工具的话,工具下载下来就好了,无线调起来吧(XX,根本停不下来)!第一次发文,多多指教!

提取密码:mwb1

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

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

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

  1. 配置ADB环境变量 右键我的电脑>>属性>>高级系统设置>>环境变量 在系统变量(s)里找到Patch,选择编辑。将ADB所在的目录复制进去,注意用“;”与其他变量分隔开

  1. 检测ADB是否配置成功 打开命令行窗口(windows键+R) 输入指令'adb devices' 如下图所示,则说明配置成功

##无线调试

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

  1. 打开adbwireless(已获取root权限),界面显示当前设备的ip地址;

  1. 打开Android Studio控制台的Terminal,输入adbwireless界面显示的指令 adb connect 192.168.8.101, 输出 connected to 192.168.8.101:5555则表示连接成功。接下来开始无线调试之旅吧,跟USB连接无差别。 同样的你也可以直接在命令行窗口输入以上指令,也是可以连接成功的。

注:下次要用时只需要把手机和电脑连同个局域网,手机打开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支持两种连接系统的方式,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以上),如果懒得每次在手机上敲命令,可使用这个工具,直接一键设置,并支持开机自动设置!! 需root权限!附上AirADB的主页面

##参考资料

转载于:https://juejin.im/post/5a30f3a2f265da43305e760e

你可能感兴趣的文章
定制化Azure站点Java运行环境(1)
查看>>
inotify用法简介及结合rsync实现主机间的文件实时同步
查看>>
php 判断手机登陆
查看>>
git 问题
查看>>
Fedora18设置终端快捷键 和 桌面快捷方式
查看>>
取消NavigationBar左右两边的空隙
查看>>
Ubuntu 12.04 Gedit中文乱码解决办法
查看>>
修改symfony sfDoctrineGuardPlugin验证密码的方法
查看>>
Vbird的Linux私房菜学习笔记之正则表达式-特殊字符
查看>>
数据的作用域
查看>>
js中括号用于自执行测试
查看>>
ssh 公钥 密钥
查看>>
c#设计模式-单例模式
查看>>
Ehcache web cahce 缓存改良版
查看>>
F5集群配置公共irule,解决X-Frame-Options漏洞及host头漏洞
查看>>
mysql 创建日期列之timestamp
查看>>
VMM系列之使用VMM服务器构建 Hyper-V主机(4)
查看>>
详测 Generics Collections TList (7): Items、Contains
查看>>
配置FTP服务器(2) 本地用户下载和上传
查看>>
多线程编程(11) - 多线程同步之 Mutex (互斥对象)[续]
查看>>