我有一个使用相机功能的黑莓应用程序。
代码库来自 PhoneGap 2.3.0 中提供的“示例应用”
索引 HTML 已添加该行
<input type="button" value="Take Picture" onclick="app.takePhoto();" />
index.js 添加了以下功能:
takePhoto: function(){
navigator.camera.getPicture(this.cameraSuccess,
this.cameraError,
{ quality: 50,
destinationType: Camera.DestinationType.DATA_URL
} );
},
cameraSuccess: function(imageData){
console.log(imageData);
var image = document.getElementById('myImage');
image.src = "data:image/jpeg;base64," + imageData;
},
cameraError: function(){
alert("error!");
}
如果我运行 Ripple Simulator,chrome 中的错误控制台会显示:
Received Event: deviceready cordova-2.3.0.js:8165
Received Event: deviceready ripple.js:39
blob:http%3A//localhost/1b218c8e-6902-4780-a652-8f7f4d52fe28 cordova-2.3.0.js:8165
blob:http%3A//localhost/1b218c8e-6902-4780-a652-8f7f4d52fe28 ripple.js:39
GET data:image/jpeg;base64,blob:http%3A//localhost/1b218c8e-6902-4780-a652-8f7f4d52fe28
如果我运行模拟器,在添加图像作为相机数据后,我会弹出一个错误,错误日志显示为:
1:01:16.054: cordovaExample [2013-01-14 18:55:03.858]: Error in error callback: Camera1387674010 = ReferenceError: Can't find variable: imageData
当我在设备上运行时,我实际上并不知道如何读取错误输出。
根据我所展示的内容,为什么我的 Phone Gap 应用程序没有在黑莓设备上拍照?