我创建了一个 Worklight 应用程序并向其添加了 Android 环境。此应用程序有一个使用设备相机拍照的按钮,以及一个img
HTML 中的标签,用于显示捕获的照片。
我跟着这个PhoneGap Camera API。
现在我正在尝试将该图像存储到 SD 卡中,但这样做失败了。我的
编辑:我改变了我的代码如下:
function takeimage() {
// Retrieve image file location from specified source
navigator.camera.getPicture(getImageURI, function(message) {
alert('Image Capture Failed');
}, {
quality : 40,
destinationType : Camera.DestinationType.FILE_URI
});
}
function getImageURI(imageURI) {
var gotFileEntry = function(fileEntry) {
var img=document.getElementById("thisImage");
img.style.visiblity="visible";
img.style.display="block";
img.src=imageURI;
alert("got image file entry: " + fileEntry.fullPath);
var gotFileSystem = function(fileSystem){
// copy the file
fileEntry.moveTo(fileSystem.root, "pic.jpg", null, null);
};
// get file system to copy or move image file to
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFileSystem, fsFail);
};
//resolve file system for image
window.resolveLocalFileSystemURI(imageURI, gotFileEntry, fsFail);
}
//file system fail
function fsFail(error) {
alert("failed with error code: " + error.code);
}
除方法外,一切正常(捕获应用程序缓存文件夹中可用的图像和图像)moveTo
。
fileEntry.moveTo(fileSystem.root, "pic.jpg", null, null);
我发出fileSystem.root
警报,我得到了Object object
。所以文件夹位置不可用于移动该图像(我认为这是真正的问题)。