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网络的依赖,通过数据线进行开发和调试了。

相关推荐
光锥智能6 小时前
荣耀将阿莱电影工作流融入机器人手机
人工智能·智能手机·机器人
朝与同歌暮同酒9 小时前
冒泡社区《幻想三国》还能玩吗?安卓手机与电脑模拟器试玩记录
android·智能手机·电脑
AIsoft_868811 小时前
按日期查找录音的软件:快速定位历史会议记录
人工智能·智能手机·语音识别
2601_9547064912 小时前
云端算力重构移动生态:云手机技术架构解析与 Python 自动化实战
智能手机·重构·架构
LDyun_12 小时前
云手机低延迟怎么实现的?为什么云手机能够 7×24 小时在线?
ios·智能手机·安卓·玩游戏
zzq77971 天前
APP 加固选型实战:从保护面构建到发布验收的全链路指南
安全·安卓·app加固·apk加固·御盾安全·御盾·免费加固
jike_20262 天前
安卓手机方言语音转文字工具横评:3款APP方言支持范围和识别效果对比
智能手机
开开心心就好2 天前
批量图片OCR识别重命名工具完全免费
随机森林·智能手机·ocr·电脑·word·音视频·最小二乘法
深念Y3 天前
技术探索记录 在 Android 手机上运行 One API
android·linux·服务器·智能手机·go·交叉编译·服务
潜龙95273 天前
手机自动化测试AI新方案
人工智能·智能手机