最近在用adb 连接华为手机的时候,经常出现连接不上,找不到设备等问题,终于解决了,记录一下。
对于华为的新手机而言,第一次连接使用adb + ip 的方式是连接不上的,必须先使用数据线连接调试后,才能开启远程连接。
开启调试模式
- 确保自己打开了开发者模式(设置→系统→关于手机→连续点击版本号七次)
- 开发者模式开启之后,系统→ 开发人员选项→勾选开启USB调试,勾选开启“仅充电”模式下允许ADB调试

USB 连接调试
我在用USB连接的时候,之前一下就能连上,这次换了手机没连上,也可能是我的adb 启动时间较长。一直是连接不上的状态。

解决办法是重启adb.
adb kill-server
adb start-server

另外,有的时候USB 连接后,adb devices 命令可以看到已连接,但几秒后又不见了。很可能是连接不稳定,可以换USB线试下,或者趁着连上的几秒,快速切换为tcpip 连接。
远程连接
我们不希望每次连接都要插上数据线,在同一个WiFi下,最好直接用ip连接即可。
但刚开始ip 始终连接不上。

- 输入 adb tcpip 5555 (这个是从usb模式切换到无线连接,后面的5555为端口,可以指定其他的端口,前提是端口未被调用)
- 输入adb connect 192.168.xxxx.xxxx:5555 (192.168.xxxx.xxxx为你手机的ip地址,5555为了设置·的端口号)
- 第二次连接的时候无需数据线了,在保证电脑和手机在同一个局域网的情况下直接在终端输入

权限问题
华为的鸿蒙系统会适配安卓,连上Android Studio 可以看到安卓版本。
Android 11 后,限制了对sdcard/Android/data 目录的访问,adb 也访问不了。
