Ionic CameraPreview不会等到正确初始化

时间:2017-11-19 18:12:41

标签: android cordova ionic-framework ionic2 ionic3

我在Ionic 3应用程序中有一个CameraPreview,我正在设置参数:闪光开/关,对焦模式,色彩效果等。问题是这些只能在CameraPreview对象设置时设置已初始化并显示相机图像。所有返回设备参数的方法都是如此。

据说对象的方法正在返回Promises,但它们无法正常工作。我有两种不同的手机用于测试,三星J120搭载Android 6.0.1,摩托罗拉Moto G搭载4.4.4。在Motorola上,以下代码正常工作,摄像机参数在相机初始化后设置。在三星上它失败并显示错误消息“No camera”。

那么这里有什么问题? setFlashMode块会抛出错误,因为相机尚未运行。不要相信官方文档,它说setFlashMode需要回调参数。它没有。

this.cameraPreview.startCamera(cameraPreviewOpts)
  .then(
      () => console.log('Camera started.'),
      (error) => console.log('Camera error: ', err)
   )

//  show camera ----------------------------------------

  .then(
      () => {
        this.cameraPreview.show()
        .then(
            () => console.log('Camera showing'),
            (error) => console.log('Error showing camera: ', err)
        )
   })

//  set flash ----------------------------------------

   .then(
       () => {
         this.cameraPreview.setFlashMode('on')
         .then(
             () => console.log('Flash mode set OK'),
             (error) => console.log('Error setting flash mode: ', error)
         )
   })

0 个答案:

没有答案