2013-06-27 51 views
0

我正在尝试phonegap文件传输API上传文件到远程服务器,它工作正常。但我有问题获取原始文件路径。 'imageURI'返回临时路径,所以我尝试了“window.resolveLocalFileSystemURI”来获取原始路径。但是下面的代码不会返回任何路径。请帮助我知道我错在哪里。从Phonegap原始图像路径文件传输API

<script> 

    function getphoto() { 

    navigator.camera.getPicture(uploadPhoto, function(message) {alert('get picture failed'); 
}, { quality:10, destinationType:navigator.camera.DestinationType.FILE_URI, sourceType:navigator.camera.PictureSourceType.PHOTOLIBRARY }); 

} 


    function uploadPhoto(imageURI) 
      { 

        window.resolveLocalFileSystemURI(imageURI, gotFileEntry, function(error){onfail(console.log("Error get fullPath"))}); 
      } 

function gotFileEntry(imageURI) { 
      alert("imageURI: "+imageURI); 
//not getting imageURI 
} 

</script> 

感谢

+0

这背后越来越原来的文件路径的意义? –

+0

从文件名我需要检查图像是否已经上传.. – Dev

+0

和上面的代码只显示上传时,在手机上的JPG图像。有没有办法我可以上传所有图像类型? – Dev

回答

0

我想应该是可以的,只是改变了扩展。

检查以下链接

希望这有助于。

+0

非常感谢答复。但在该解决方案中,图像名称是使用当前日期时间创建的。但我的要求是获得原始图像的名称。那可能吗?关于不同的图像类型,我可以指定jpg和png的扩展名吗? – Dev

+0

1.在我看来,使用相机拍摄的照片无法为您提供原始文件名。所以你必须将图像存储在SD卡或'localstorage'上。然后检查图像是否上传。 2.对于PNG图像phonegap相机API具有'EncodingType'属性。请参阅[Camera API文档](http://docs.phonegap.com/en/1.0.0/phonegap_camera_camera.md.html) –

+0

再次感谢... 2)我的应用程序如何允许together..jpg和png。 。 – Dev

1

下面的代码片段可以帮助你.. :-)使用imageData.nativeURL为原单文件路径

  navigator.camera.getPicture(onSuccess, onFail, { 
     quality : 75, 
     destinationType : Camera.DestinationType.FILE_URI, 
     sourceType : navigator.camera.PictureSourceType.SAVEDPHOTOALBUM , 
     mediaType : navigator.camera.MediaType.ALLMEDIA //all mediaFiles 
    }); 

    function onSuccess(imageData) { 
     window.resolveLocalFileSystemURI(imageData, gotFileEntry, 
      function(error){ 
       alert("Error get fullPath"); 
      } 
     ); 
     function gotFileEntry(imageURI) { 
     // alert("imageURI: "+JSON.stringify(imageURI)); 
     alert("imageURI: "+imageURI.nativeURL); 
     } 
    } 

    function onFail(message) { 
     alert('Failed because: ' + message); 
    } 
相关问题