科尔多瓦在后台拍照

Posted

技术标签:

【中文标题】科尔多瓦在后台拍照【英文标题】:Cordova take photo in the background 【发布时间】:2018-02-17 09:52:59 【问题描述】:

我正在制作一个必须在后台拍照的应用程序,即没有交互。当前使用的是cordova-plugin-camera,但这会打开一个交互式选项,用户必须从中手动单击照片。

navigator.camera.getPicture(successCallback, FailCallback, 
    destinationType: Camera.DestinationType.DATA_URL,
    cameraDirection: 1,
    quality: 25,
    targetWidth: 300,
    targetHeight: 300
);

【问题讨论】:

【参考方案1】:

使用CameraPictureBackground插件:

示例代码:

function success(imgurl) 
  console.log("Imgurl = " + imgurl);


function onFail(message) 
    alert('Failed because: ' + message);


function CaptureBCK() 
    var options = 
      name: "Image", //image suffix
      dirName: "CameraPictureBackground", //foldername
      orientation: "portrait", //or landscape
      type: "back" //or front
    ;

    window.plugins.CameraPictureBackground.takePicture(success, onFail, options);


<button onclick="CaptureBCK();">Capture Photo</button>

您将在您的设备存档中的 CameraPictureBackground 目录下找到您的图片。

【讨论】:

我收到此类型错误:无法读取未定义的属性“takePicture”。 你安装了CameraPictureBackground插件吗? 是的,我这样做了,而且 monaca 工具包检测到了它

以上是关于科尔多瓦在后台拍照的主要内容,如果未能解决你的问题,请参考以下文章

后台服务科尔多瓦离子应用程序。背景插件在 ios 8.3 上不起作用

科尔多瓦离子框架:获取位置后台服务

Android后台服务拍照

Android后台服务拍照的解决方式

如何使用相机在 Android 上的后台服务中拍照? [复制]

当我尝试在后台拍照时,我的应用程序在某些设备中崩溃