iOS扫描Expo 52项目二维码提示“No usable data found”问题咨询
Expo 52升级后iOS相机扫描项目二维码提示“No usable data found”问题
问题详情
原本基于Expo 51开发的可用Expo应用,升级到Expo 52后开发服务器运行正常,但iOS相机扫描项目二维码时会提示“No usable data found”,自行测试也存在该问题:
- 此前因隧道可用且应用已关联Expo Go,未使用二维码,故未发现问题出现时间
- 无论VPN开启与否,问题均会发生,已多次测试两种场景
- 并非Expo Go未安装问题:已安装Expo Go,且当前版本可正常连接开发服务器并进行实时代码修改
- 仅二维码扫描失效:隧道服务仍可正常工作
环境信息
执行npx expo-env-info输出:
expo-env-info 1.2.1 environment info: System: OS: macOS 15.0.1 Shell: 5.9 - /bin/zsh Binaries: Node: 18.20.4 - ~/.nvm/versions/node/v18.20.4/bin/node Yarn: 3.6.4 - ~/.nvm/versions/node/v18.20.4/bin/yarn npm: 10.7.0 - ~/.nvm/versions/node/v18.20.4/bin/npm Managers: CocoaPods: 1.15.2 - /opt/homebrew/bin/pod IDEs: Xcode: /undefined - /usr/bin/xcodebuild npmPackages: expo: ~52.0.7 => 52.0.7 expo-router: ~4.0.6 => 4.0.6 react: 18.3.1 => 18.3.1 react-dom: 18.3.1 => 18.3.1 react-native: 0.76.2 => 0.76.2 react-native-web: ~0.19.13 => 0.19.13 Expo Workflow: managed
备注
曾尝试在Expo仓库提交该问题,但需要提供可复现的示例代码库,因代码库需保持私有,无法提供。
编辑补充
找到相关社区讨论,贡献者称此为“预期行为”,但对此存疑——除升级到Expo 52外环境无其他变化,且隧道仍正常工作,推测是二维码格式不正确。相关讨论核心内容翻译如下:
这是预期行为。如果你没有使用Expo Go,二维码现在包含指向应用商店/Google Play上Expo Dev Client应用的链接。如果你正在使用Expo Go,你需要用Expo Go应用内的扫描器来扫描二维码,而不是系统相机。
解决办法
使用Expo Go内置扫描器
打开Expo Go应用,找到内置的扫描功能(通常在首页或侧边栏入口),用它扫描项目二维码,即可正常连接开发服务器。手动添加项目(替代方案)
若仍想使用系统相机,可复制开发服务器的隧道URL,直接在Expo Go中手动添加项目,同样能实现连接。
内容的提问来源于stack exchange,提问作者Armando Vasquez
相关产品推荐
相关产品推荐

