使用修改的 flashMode 属性拍照时出现 React-Native-Camera 错误

Posted

技术标签:

【中文标题】使用修改的 flashMode 属性拍照时出现 React-Native-Camera 错误【英文标题】:React-Native-Camera Error when take photo with modified flashMode attribute 【发布时间】:2017-09-12 03:27:58 【问题描述】:

在修改 flashMode 属性的情况下尝试拍照时出现以下错误:

NSLocalizedDescription: '错误域=AVFoundationErrorDomain Code=-11800 "操作无法完成" UserInfo=NSUnderlyingError=0x170440210 错误 域=NSOSStatusErrorDomain 代码=-16800 "(null)", NSLocalizedFailureReason=发生未知错误(-16800), NSLocalizedDescription=操作无法完成' 2017-09-12 00:08:29.907053-0300 GimenesApp [1936:765074] [错误: 错误域=AVFoundationErrorDomain 代码=-11800 "操作可能 未完成” UserInfo=NSUnderlyingError=0x170440210 错误 域=NSOSStatusErrorDomain 代码=-16800 "(null)", NSLocalizedFailureReason=发生未知错误(-16800), NSLocalizedDescription=操作无法完成]

这是我正在使用的一段代码:

<Camera
    captureTarget=Camera.constants.CaptureTarget.disk
    ref=(cam) => 
      this.camera = cam;
     
    flashMode=this.state.flashMode>
    <Button onPress=this.takePicture.bind(this) transparent 
      <Icon name="ios-radio-button-off" />
    </Button>
</Camera>

【问题讨论】:

【参考方案1】:

所以,我解决了这个错误,删除了两个对 setState 的调用

这是我的拍照方法:

  takePicture() 
    const options = ;
    this.camera.capture(metadata: options)
      .then((data) => 
        this.setState(
          PHOTO_PATH: data.path,
          IS_NOT_PHOTO_TAKE: false
        );
      )
      .catch(err => 
        console.error(err)
      );
  ;

之前,我在 takePicture 方法中设置了两次状态。我刚移了外面的setState,错误就消失了。

我不知道为什么,但现在,它正在工作。

如果有人对此错误有解释,请与我们分享。

【讨论】:

以上是关于使用修改的 flashMode 属性拍照时出现 React-Native-Camera 错误的主要内容,如果未能解决你的问题,请参考以下文章

拍照时出现 FileUriExposedException

CV2:尝试拍照时出现“[WARN:0] terminating async callback”

php预览时出现方框

使用 Aspect 时出现 NoSuchBeanDefinitionException

尝试使用“下载”属性以 HTML5 提供下载时出现“失败 - 网络错误”

发送图像时出现 Python 套接字错误。无法解码字节/意外 EOF