2013-10-19 19 views
1

我有一個具有以下上傳的JavaScript應用程序:PhoneGap的文件上傳失敗,錯誤1(找不到文件)在Android

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

function uploadPhoto(localURI) { 
    window.resolveLocalFileSystemURI(localURI, function(fileEntry) { 
     myURI=fileEntry.fullPath; 

     var options = new FileUploadOptions(); 
     options.fileKey="file"; 
     options.fileName=myURI.substr(myURI.lastIndexOf('/')+1); 
     options.mimeType="image/jpeg"; 

     var params = new Object(); 
     params.value1 = "test"; 
     params.value2 = "param"; 
     options.params = params; 
     options.chunkedMode = true; 

     var ft = new FileTransfer(); 
     ft.upload(myURI, "http://www.mydomain.co.uk/uploadimage.php", win, fail, options); 

     alert(myURI + " uploading"); 
    }, resolveFail); 
} 

這坐在那裏約5分鐘和失敗,錯誤代碼1(文件未找到)來自ft.upload調用。我已經使用resolveLocalFileSystemURI避開你navigator.camera.getPicture得到有時怪異的路徑

,我認爲這是問題的最初。要上傳的文件路徑看起來不錯,但是在確實是好好考慮之後纔會找到文件。

試圖與這一切,演示代碼根本不起作用。它可能是一個權限問題?

回答

0

排序的得到了這條底線,我就迷上了我的wifi網絡平板電腦測試這一點。當使用移動數據連接在手機上進行測試時,它可以正常工作,但平板電腦連接到手機時也是如此。

不知道爲什麼它給了錯誤1(文件未找到),而不是錯誤3(連接錯誤),或者實際上爲什麼它不能使用我的wifi連接發送數據。

許多代碼示例使用上面的代碼沒有resolveLocalFileSystemURI元素,如果你不斷收到錯誤1嘗試上面。