2011-09-05 58 views
3

因此,当我拍照时,他们会被保存到DCIM/Camera /目录。我需要在拍摄后通过电子邮件发送图片。Android - Phonegap - 如何获取拍摄照片的文件名称

如何获取最后一张照片的名称? (或调整我当前的代码以自定义的文件名)。

下面是拍照代码:

function capturePhoto(id) { 
navigator.camera.getPicture(onSuccess, onFail, { quality: 20, 
destinationType: Camera.DestinationType.FILE_URI });  

function onSuccess(imageURI) { 
var image = document.getElementById(id); 

image.style.display = 'block'; 
image.src = imageURI; 

} 

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

回答

8

这是我的问题的答案。你必须运行Phonegap 1.0。这将把图片放在任何你想要的地方,并将其命名为你想要的东西。那么你可以通过文件名进行引用,并做任何你想要的东西。

var gotFileEntry = function(fileEntry) { 
      console.log("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) { 
     console.log("failed with error code: " + error.code); 
    }; 
2

检查这个线程的第一个答案告诉你如何检索刚拍摄的图像。 take picture from camera and choose from gallery and display in Image view

+0

我对Java不太好。我希望用Phonegap能做到这一点。所以如果我用Java编写这个数据,我会如何获取这些数据并告诉它我想保存的文件名和目录? – user899641

+0

如果你想坚持Phonegap的下面的链接,很多解释它(看看那里的描述后的例子,你会发现你可以从mediaFiles变量中提取图像的路径和名称)http://docs.phonegap.com /phonegap_media_capture_capture.md.html#capture.captureImage – potter

+0

不幸的是,我正在使用Phonegap 0.95,并且只能使用1.0。我将不得不重写太多代码才能切换到1.0。你知道Java中这个实例指定文件名和位置的例子吗?基本上我需要得到的图片,重新命名,并把它放在一个不同的目录。 – user899641