微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

React-native-camera 显示为黑屏

如何解决React-native-camera 显示为黑屏

我正在尝试为我的应用程序实施 eKYC,其中包括 3 个摄像头屏幕(2 个带有背面摄像头的屏幕,1 个带有前置摄像头的屏幕)

在某些 Android 设备(三星 Note 8、小米 Redmi Pro 8、Vsmart Joy 3...)上,第三屏的摄像头(前置摄像头)不工作(黑屏)。

我尝试从 Android logcat 读取错误,但收到此错误

2021-01-11 12:29:00.704 3973-13086/com.******.vn W/CameraBase: An error occurred while connecting to camera 1: Status(-8): '8: connectHelper:1648: Too many cameras already open,cannot open camera "1"'

我尝试过的事情:在当前屏幕聚焦时使用 NavigationEventswithNavigationFocus 渲染相机

const [isFocus,setFocus] = useState<boolean>(false)
<NavigationEvents onWillFocus={onFocus} onWillBlur={onBlur}></NavigationEvents>
{isFocus && props.isFocused && (
    <RNCamera
      ref={refCamera}
      style={styles.preview}
      type={RNCamera.Constants.Type.front}
      captureAudio={false}
      onCameraReady={() => console.log('oncameraready')}
      onFacesDetected={onFaceDetected}>
      <View style={styles.progressBarContainer}>
        <Progress.Bar
          color={Colors.asEastOcean}
          progress={progress}
          width={200}
          style={styles.progressBar}
          borderColor={Colors.white}
          unfilledColor={Colors.white}
        />
      </View>
    </RNCamera>
  )}

但是第三个屏幕上的摄像头(前置摄像头)仍然无法正常工作。其他两个完美地工作。 有什么办法可以解决这个问题,先谢谢了!

注意:如果我改变顺序并先渲染第三个屏幕,则前置摄像头工作正常。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。