You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Expo-Camera在iPhone 12以上机型无法扫描条形码的问题求助

Expo-Camera在iPhone 12以上机型无法扫描条形码的问题求助

各位大佬好,我目前在用Expo 53开发一款条形码扫描App,核心依赖expo-camera的CameraView组件。现在遇到了一个棘手的问题:扫描功能在Android设备和iPhone 12以下的机型上都运行得很顺畅,但到了iPhone 12及以上的新机型就完全无法识别条形码。

另外我还注意到,新iPhone上的相机取景画面看起来距离目标有点远,我尝试给组件加上zoom={2}的属性,但还是没能解决扫描失效的问题。相机挂载也没有报错,权限也正常授予了,实在找不到问题出在哪。

下面是我当前使用的CameraView组件代码:

export default function BarcodeScannerScreen() {
  const handleBarcodeScanned = ({ type, data }) => {
    // 扫描到条码后的处理逻辑
    console.log(`识别到条码:${type} - ${data}`);
  };

  return (
    <CameraView
      autofocus="on"
      focusable
      zoom={2}
      style={styles.camera}
      onBarcodeScanned={handleBarcodeScanned}
      barcodeScannerSettings={{
        barcodeTypes: [
          "ean13",
          "code128",
          "ean8",
          "pdf417",
          "upc_e",
          "code39",
          "code93",
          "codabar",
          "upc_a",
        ],
      }}
      onMountError={(error) => console.log("相机挂载错误:", error)}
    />
  );
}

有没有大佬遇到过类似的问题?或者能给我一些排查方向和解决方案?

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.07 12:10:25