Expo如何只通过数据线连接手机的Expo go

不通过局域网,让电脑启动expo服务,然后手机的expo go通过数据线获取电脑上的expo app。主要思路是利用 ADB (Android Debug Bridge) 的端口转发功能,让手机通过 USB 数据线访问电脑上的开发服务器。

以下是详细的操作步骤:

准备工作:开启手机USB调试

  1. 打开开发者选项 :在手机 设置 > 关于手机 中,连续点击 版本号 7次。
  2. 开启USB调试 :返回 设置,进入 开发者选项,找到并开启 USB调试
  3. 连接电脑:用数据线将手机连接到电脑。手机上会弹出"允许USB调试吗?"的提示,点击"确定"。

核心方法:使用 ADB Reverse 转发端口

这是最稳定、推荐的方法。

  1. 确认设备连接:在电脑终端中运行以下命令,确保能看到你的设备列表:

    bash 复制代码
    adb devices

    如果设备列表为空或显示"unauthorized",请检查手机上的USB调试授权。

  2. 建立端口转发:运行以下命令,将手机上的端口转发到电脑上:

    bash 复制代码
    adb reverse tcp:8081 tcp:8081

    Expo 开发服务器默认使用 8081 端口。如果你的服务器使用了其他端口(如19000),请相应修改。

  3. 启动Expo开发服务器 :在项目目录下,使用 --localhost 参数启动服务器,这会让服务器只监听本地地址:

    bash 复制代码
    npx expo start --localhost

    --localhost 参数能确保服务器不会尝试绑定到局域网IP,从而强制使用USB通道。

  4. 在Expo Go中打开项目 :服务器启动后,在手机上的Expo Go App中,不要扫描二维码。而是手动输入以下地址:

    复制代码
    exp://127.0.0.1:8081

    复制代码
    exp://localhost:8081

    即可通过USB数据线加载应用。

备选方法:使用 Tunnel 模式

如果 adb reverse 不生效,可以尝试Expo的 --tunnel 模式。这种方式通过Expo的云服务建立连接,不依赖局域网。

bash 复制代码
npx expo start --tunnel

服务器启动后会生成一个URL,在Expo Go中手动输入这个URL即可。注意,这种方式的加载和刷新速度可能会比USB直连慢一些。

针对旧版Expo的提示

如果你使用的是 Expo SDK 45 或更早版本,Expo CLI 曾经提供一个Web界面。你可以在其中将连接方式从"LAN"切换为"Local",也能实现通过USB连接。不过这个Web界面在新版本中已被移除。

总结

总的来说,最推荐的流程是:

  1. 开启手机 USB调试
  2. 在终端执行 adb reverse tcp:8081 tcp:8081
  3. 启动项目 npx expo start --localhost
  4. 在Expo Go中手动输入 exp://127.0.0.1:8081

按照这个流程操作,就可以摆脱对Wi-Fi网络的依赖,通过数据线进行开发和调试了。

相关推荐
杉氧15 小时前
RN 性能调优指南:重渲染(Re-renders)控制与长列表(FlatList)优化
android·前端·react native
光影少年16 小时前
react navite process.nextTick 和 Promise.then 的执行顺序
前端·react native·react.js
凛_Lin~~1 天前
LiveData 源码解析
android·安卓·livedata
开开心心就好2 天前
清理此电脑网盘图标工具,开源免费好用
网络·网络协议·tcp/ip·智能手机·电脑·scala·erlang
Water_JD2 天前
Mayaai Top 手机端适合做什么 AI 工作?哪些任务不适合?
智能手机
光影少年2 天前
react navite浏览器 Event Loop 和 Node Event Loop 的区别
前端·javascript·react native·react.js·前端框架
Legendary_0082 天前
LDR6020:摄影手柄 OTG 方案,解决手机拍摄边控边充痛点
智能手机
电手3 天前
6G商用时间表公布:工信部官宣研制6G基站和智能手机
智能手机
做前端的娜娜子3 天前
施工蓝图:vite.config.js —— 项目的指挥中心
前端·react native·vite
走到天涯海角3 天前
uniApp蓝牙在手机上测试
智能手机·uni-app