adb真机调试_摆脱烦人的数据线

913 阅读2分钟

窈窕淑女,what's your QQ? 😂

在电脑上开发安卓 APP 的时候,配置环境就够头疼的了,模拟器又卡又占空间(换的 240G 固态完全不够用啊),真机上调试爽归爽,但是连着根 USB 线太烦,经常飘到键盘上影响我敲(ba)代码(dao)的速度,而且不能在电脑屏幕上操作。

RN 的真机调试也离谱,摇晃手机才能调出开发者菜单,这个设计挺想吐槽的,你能想象手机连着线甩起来是有多烦么~

adb 无线模式

一切的一切都基于此,通过 WiFi 进行 adb 调试,无线模式 👍 前提的条件是在同一局域网下

开启无线调试很简单,一行命令就搞定了:

$ adb tcpip 5555 # 5555 是默认端口
$ adb connect 192.168.0.110
$ adb devices
List of devices attached
192.168.0.110:5555      device

如果有 root 权限可以直接在手机上操作,都不用线了:

$ su
$ setprop service.adb.tcp.port 5555
$ stop adbd
$ start adbd

接下来所有 adb 命令都可以通过无线执行,非常方便,不用再频繁插拔了。

如何关闭连接:

$ adb disconnect 192.168.0.110
$ adb usb # 切换回 usb 有线模式

$ setprop service.adb.tcp.port 0 # 或者这样设置后重启 adbd 服务

风险

任何便利的方式都存在风险,所谓的新人优惠呵!

adb 无线调试的风险来源于同一局域网下。任何能连接到该手机 5555 端口上的人都能进行远程调试,手机网络不太可能,一般都是在同一局域网下,可以简单地认为一台路由器就是一片局域网,貌似默认路由器的防火墙规则就是禁止外部连接访问。

不过很多合租的公寓大家都是用的同一个路由器 WiFi,这种情况下风险很大,搞事情的人很容易就能扫到 ip/port。

建议开发的时候开启,开发完后记得关闭!

一些小技巧s

adb shell pm 调用软件包管理器。删除那些卸不了的流氓内置软件。
adb shell am 调用 Activity 管理器。远程启动 APP 等等。

scrcpy

很好很强大的一款开源软件,开始以为是录屏,其实是王者,甩厂商自带的什么屏幕共享十八条大马路。截图就算了,用过的都说好,默默地给了个 star。

支持 Windows/Mac/Linux,亦能自己构建。

添加到环境变量后,启动:

$ scrcpy

其它的参数和快捷键:

  • --always-on-top 始终在顶层
  • Alt + F 切换全屏
  • --max-size 屏幕大小
  • --encoder 神马编码器?

支持好多好多的功能... 有需要自己查看 Readme.

通过 adb 无线调试 + scrcpy 控制,这下用 React Native 开发安卓 APP 的体验水平直接提升一个档次,舒服!

参考链接

原文链接(博客小站引流):ningtaostudy.cn/articles/bB…