目录
Android Debug Bridge,简称adb,是一种功能多样的命令行工具,可让您与设备进行通信。adb 命令可用于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。它是一种客户端-服务器程序,包括以下三个组件:
使用adb无线连接设备,应具备以下条件:
当满足上述提到的条件,就可以开始连接了。
打开cmd.exe或Android Studio软件里面底部的Terminal工具,输入以下命令:
adb connect <ip地址>:5555
连接上的设备可以通过执行adb devices命令查看
adb devices
设备连接上,就可以查看并对设备进行安装调试的工作了
连接上的设备可通过执行adb disconnect <ip地址>:5555断开连接
adb disconnect <ip地址>:5555
部分设备默认端口不是5555,需要手动修改,请看下方的修改端口号。
使用方法二进行adb连接,应该是出现了使用方法一连接不通adb的情况,这时候就可以使用方法二来进行连接。
adb devices,如果出现有设备,表示电脑已通过USB连接上手机。adb root <!-- 使用root权限重新启动adbd -->
adb shell <!-- 进入到Android系统的shell -->
5555,将5555改为-1则表示打开adb的USB调试功能。setprop.service.adb.tcp.port 5555
adb tcpip 5555
connect连接命令即可完成连接。adb connect <ip地址>:5555
端口号修改,使用到Github上标星31.5k的AndroidUtilCode,该工具有提供相关类在Android设备上执行cmd命令。
引入:
implementation 'com.blankj:utilcodex:1.30.1'
Java代码:
ShellUtils.CommandResult openAdb = ShellUtils.execCmd("setprop service.adb.tcp.port 5555", AppUtils.isAppRoot());
使用数据线连接上设备,执行命令adb tcpip 5555,将端口号重置为5555。
adb tcpip 5555
修改端口号后,拔掉数据线,执行adb命令出现连接失败的情况,这是修改失败了,可尝试下方问题集合的第二点解决问题。
值得注意的是,Android官方在Android 11+的设备推出了升级版的无线调试,届时直接扫描Android studio开发工具生成的二维码即可连接,简单又便捷。
adb工具的使用前提是必须先连接上设备
android-tool是一个Flutter编写的程序,支持Windows、Mac、Linux系统,它将adb的众多命令封装成一个个小小的功能,极大的提高了执行adb相关操作的效率。
scrcpy-gui是一个无需root权限即可在pc端操控Android设备的工具。
链接:scrcpy-gui
1、missing port in specification: tcp:192.168.31.209
原因:缺少端口。
解决方案:加上端口,默认为5555
2、cannot connect to 192.168.31.209:5555: 由于目标计算机积极拒绝,无法连接。 (10061)
原因:端口号不对。
解决方案:安装一个app使用adb命令配置端口号。最好是使用数据线连接上设备,执行adb tcpip 5555命令监听端口 5555 上的 TCP/IP 连接,响应restarting in TCP mode port: 5555后,拔掉数据线执行连接命令即可。
3、ping不通怎么办?
解决方案:

其它问题暂未遇到,如本文提供方法无法处理,请查看下方的参考文档。若无法连接,请放弃使用adb无线连接的方案,改用可传输数据的数据线进行连接。
参考文档
我正在使用Sequel构建一个愿望list系统。我有一个wishlists和itemstable和一个items_wishlists连接表(该名称是续集选择的名称)。items_wishlists表还有一个用于facebookid的额外列(因此我可以存储opengraph操作),这是一个NOTNULL列。我还有Wishlist和Item具有续集many_to_many关联的模型已建立。Wishlist类也有:selectmany_to_many关联的选项设置为select:[:items.*,:items_wishlists__facebook_action_id].有没有一种方法可以
我使用的是Firefox版本36.0.1和Selenium-Webdrivergem版本2.45.0。我能够创建Firefox实例,但无法使用脚本继续进行进一步的操作无法在60秒内获得稳定的Firefox连接(127.0.0.1:7055)错误。有人能帮帮我吗? 最佳答案 我遇到了同样的问题。降级到firefoxv33后一切正常。您可以找到旧版本here 关于ruby-无法在60秒内获得稳定的Firefox连接(127.0.0.1:7055),我们在StackOverflow上找到一个类
在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList()Obt
MIMO技术的优缺点优点通过下面三个增益来总体概括:阵列增益。阵列增益是指由于接收机通过对接收信号的相干合并而活得的平均SNR的提高。在发射机不知道信道信息的情况下,MIMO系统可以获得的阵列增益与接收天线数成正比复用增益。在采用空间复用方案的MIMO系统中,可以获得复用增益,即信道容量成倍增加。信道容量的增加与min(Nt,Nr)成正比分集增益。在采用空间分集方案的MIMO系统中,可以获得分集增益,即可靠性性能的改善。分集增益用独立衰落支路数来描述,即分集指数。在使用了空时编码的MIMO系统中,由于接收天线或发射天线之间的间距较远,可认为它们各自的大尺度衰落是相互独立的,因此分布式MIMO
注意:本文主要掌握DCN自研无线产品的基本配置方法和注意事项,能够进行一般的项目实施、调试与运维AP基本配置命令AP登录用户名和密码均为:adminAP默认IP地址为:192.168.1.10AP默认情况下DHCP开启AP静态地址配置:setmanagementstatic-ip192.168.10.1AP开启/关闭DHCP功能:setmanagementdhcp-statusup/downAP设置默认网关:setstatic-ip-routegeteway192.168.10.254查看AP基本信息:getsystemgetmanagementgetmanaged-apgetrouteAP配
最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路
require"socket"server="irc.rizon.net"port="6667"nick="RubyIRCBot"channel="#0x40"s=TCPSocket.open(server,port)s.print("USERTesting",0)s.print("NICK#{nick}",0)s.print("JOIN#{channel}",0)这个IRC机器人没有连接到IRC服务器,我做错了什么? 最佳答案 失败并显示此消息::irc.shakeababy.net461*USER:Notenoughparame
Devise是一个Ruby库,它为我提供了这个User类:classUser当写入:confirmable时,注册时会发送一封确认邮件。上周我不得不批量创建300个用户,所以我在恢复之前注释掉了:confirmable几分钟。现在我正在为用户批量创建创建一个UI,因此我需要即时添加/删除:confirmable。(我也可以直接修改Devise的源码,但我宁愿不去调和它)问题:如何即时添加/删除:confirmable? 最佳答案 WayneConrad的解决方案:user=User.newuser.skip_confirmation
考虑一下:现在这些情况:#output:http://domain.com/?foo=1&bar=2#output:http://domain.com/?foo=1&bar=2#output:http://domain.com/?foo=1&bar=2#output:http://domain.com/?foo=1&bar=2我需要用其他字符串输出URL。我如何保证&符号不会被转义?由于我无法控制的原因,我无法发送&。求助!把我的头发拉到这里:\编辑:为了澄清,我实际上有一个像这样的数组:@images=[{:id=>"fooid",:url=>"http://
我有一个super简单的脚本,它几乎包含了FayeWebSocketGitHub页面上用于处理关闭连接的内容:ws=Faye::WebSocket::Client.new(url,nil,:headers=>headers)ws.on:opendo|event|p[:open]#sendpingcommand#sendtestcommand#ws.send({command:'test'}.to_json)endws.on:messagedo|event|#hereistheentrypointfordatacomingfromtheserver.pJSON.parse(event.d