Mac 使用 React-Native 使用无线调试商米机,配合Stripe 终端

前言

场景:Mac 用 React-Native 调试 Stripe 终端,商米机 USB-A 口插终端,USB-C 口插电脑。
现象:电脑线一拔,终端就能被识别;一插上,终端直接消失。
原因:商米机只有一个 USB 控制器,要么当 Device(被 PC 调试),要么当 Host(去枚举终端),二者互斥。
解法:把调试通道从 USB 迁到 Wi-Fi,让 USB-A 口永远留给 Stripe 终端。下面 5 分钟搞定。

80972c03966f70c76f652794c2bc7910

商米机 USB 角色二选一,把调试迁到 Wi-Fi,USB-A 口永远留给 Stripe。


1. 先确认终端已能被识别

把 Stripe 终端插到商米机的 USB-A 口,打开 React-Native 调试页面,确认终端列表里能出现设备。
此时 先不要插 PC 的 USB-C 线,否则又会冲突。


2. 让商米机与 Mac 同网

用商米机设置 → WLAN,连上与 Mac 同一个 Wi-Fi(或手机 5G 热点也行)。
记下商米机 IP,稍后要用。


3. 一次性打开「无线 ADB」端口

首次仍需用 USB-C 线把商米机与 Mac 短暂连接,打开终端:

# 如果有多台设备,先列出序列号
adb devices -l

# 对目标商米机(示例序列号 DP0325BDJ0201)开启 5555 端口
adb -s DP0325BDJ0201 tcpip 5555
# 看到 restarting in TCP mode port: 5555 即可

# 拿 IP(wlan0 地址)
adb -s DP0325BDJ0201 shell ip route get 1
# 返回示例:192.168.2.124 就是本机 IP

4. 拔掉 USB-C,正式切到无线

# 建立无线连接
adb connect 192.168.2.124:5555
# 提示 connected to 192.168.2.124:5555 即成功

adb devices 应该只剩一条无线记录。
现在可以 永久拔掉 USB-C 线,Android Studio / VS Code 的 logcat、断点、reload 全部正常。


5. 以后每次开机

只要 Wi-Fi 不变,直接在 Mac 执行

adb connect 192.168.2.124:5555

即可继续调试,Stripe 终端始终由 USB-A 口供电,不再冲突。


6. 常见问题速查

报错 解决
error: more than one device/emulator adb -s 序列号 指定设备,或先 adb disconnect 踢掉离线记录
offline 旧连接残留,先 adb disconnect IP:端口 再重新 connect
公司 Wi-Fi 隔离 手机开 5G 热点,让两台设备同网即可
adb tcpip 5555          # 让 adbd 监听 5555 端口
adb shell ifconfig      # 记下 wlan0 的 IP,例如 192.168.1.37
adb connect 192.168.1.37:5555   # 建立无线通道
posted @ 2026-01-01 18:44  牛奔  阅读(2)  评论(0)    收藏  举报