问题描述
我正在尝试为我的应用程序实施 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"'
我尝试过的事情:在当前屏幕聚焦时使用 NavigationEvents
和 withNavigationFocus
渲染相机
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 (将#修改为@)