cordova.js/Camera.js无法使用相机功能

Camera functionality is not working with cordova.js/ camera.js

本文关键字:js 相机 功能 Camera cordova      更新时间:2023-09-26

我正在javascript项目中使用cordova开发相机功能。我在项目中使用了cordova.js和camera.js文件。但是当我调用camera.js的getPicture()函数时,它在我的设备中不起作用。你可以在我的html中找到我尝试过的以下代码。请帮我完成这件事。提前谢谢。

<!DOCTYPE html>
<html lang="en">
<head>
  
    <script src="cordova.js" type="text/javascript" ></script>
    <script src="Camera.js" type="text/javascript" ></script>
    <script language="javascript">
   		var pictureSource;
   		var destinationType;
	        document.addEventListener("deviceready",onDeviceReady,false);
		function onDeviceReady() {
			pictureSource=navigator.camera.PictureSourceType;
			destinationType=navigator.camera.DestinationType;
		}
		function onPhotoDataSuccess(imageData) {
			var smallImage = document.getElementById('smallImage');
			smallImage.style.display = 'block';
			smallImage.src = "data:image/jpeg;base64," + imageData;
		}
		function capturePhoto() {
			navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50,
				destinationType: destinationType.DATA_URL });
		}
		function getPhoto(source) {
			navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50,
				destinationType: destinationType.FILE_URI,
				sourceType: source });
		}
		function onFail(message) {
			alert('Failed because: ' + message);
		}
    
    
    document.getElementById('cam1').innerHTML='<a href="javascript:void(0)" onclick="capturePhoto()"><img src="../images/camera_up.gif" alt="img" width="23" height="20" border="0" id="smallImage" /></a>';
    </script>

尝试通过命令控制台安装插件,找到您的项目,然后使用这些命令。

  • Cordova 5.0版+

cordova插件添加cordova插入相机

  • 旧版本

cordova插件添加org.apache.cordova.camera

此命令会自动在config.xml 中添加引用

删除此引用:

<script src="Camera.js" type="text/javascript" ></script>