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   # 建立无线通道
相关推荐
大嘴皮猴儿3 小时前
从零开始学商品图翻译:小白也能快速掌握的多语言文字处理与上架技巧
大数据·ide·人工智能·macos·新媒体运营·xcode·自动翻译
空中海6 小时前
第六章:iOS导航与路由系统
macos·ios·cocoa
空中海6 小时前
第九章:iOS系统框架与能力
macos·ios·cocoa
大棉花哥哥6 小时前
MAC下JADX+MCP+OpenCode自动APK逆向分析
macos·ai
空中海7 小时前
第八章:iOS并发编程
macos·ios·cocoa
算是难了7 小时前
macOS常用终端命令
macos
小码过河.13 小时前
本地端侧GUI智能体自动化操作电脑Mano-P:macOS版本安装与使用全指南
macos·ai·自动化
空中海13 小时前
第十章:iOS架构设计与工程化
macos·ios·cocoa
香蕉鼠片1 天前
跨平台开发到底是什么
linux·windows·macos
于慨1 天前
mac安装flutter
javascript·flutter·macos