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

前言

场景:Mac 用 React-Native 调试 Stripe 终端,商米机 USB-A 口插终端,USB-C 口插电脑。

现象:电脑线一拔,终端就能被识别;一插上,终端直接消失。

原因:商米机只有一个 USB 控制器,要么当 Device(被 PC 调试),要么当 Host(去枚举终端),二者互斥。

解法:把调试通道从 USB 迁到 Wi-Fi,让 USB-A 口永远留给 Stripe 终端。下面 5 分钟搞定。

商米机 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 短暂连接,打开终端:

bash 复制代码
# 如果有多台设备,先列出序列号
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,正式切到无线

bash 复制代码
# 建立无线连接
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 执行

bash 复制代码
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   # 建立无线通道
相关推荐
pe7er3 天前
macOS 应用无法打开(权限问题)解决方案
macos·mac
harmful_sheep5 天前
mac生效的终端查看
macos
iOS门童6 天前
macOS 应用"已损坏"无法打开?一文搞懂 Gatekeeper 与解决方案
macos
NPE~6 天前
[工具分享]Maccy —— 优雅的 macOS 剪贴板历史管理工具
macos·教程·工具·实用工具
差不多程序员6 天前
Mac安装OpenClaw-cn保姆级教程
macos
dzl843946 天前
mac 安装python
开发语言·python·macos
Bruce_Liuxiaowei6 天前
在 macOS 上通过 Docker 本地安装 OpenClaw 完整教程
macos·docker·容器·openclaw
阿捏利6 天前
详解Mach-O(十五)Mach-O __DATA_CONST
macos·ios·c/c++·mach-o
ShikiSuen6 天前
macOS 的 CpLk 中英切换卡顿的元凶在 InputMethodKit 本身
macos
xiayutian_c6 天前
如虎添翼-MacOS
macos