2012-06-13 2 views
1

Я разрабатываю проект phonegap в mac os с xcode. в xcode, если я создаю приложение на основе кордовы, оно автоматически создает cordova-1.6.0.js. Я использую плагин fileupload для отправки svg-файла на мой сервер. в fileupload.js я написал функцию оповещения fileuplaoder следующим образом,fileupload плагин в ios не работает

var FileUploader = function() { 
    alert("gi"); 
} 

это предупреждение работает, но когда я даю Aler под функцией загрузки,

FileUploader.prototype.upload = function(server, file, params, fileKey, fileName, mimeType, success, fail, progress) { 
    alert("upload"); 
    this._doUpload('upload', server, file, params, fileKey, fileName, mimeType, success, fail, progress); 
}; 

это предупреждение не работает. мой вызов для этого плагина в HTML странице,

window.plugins.fileUploader.upload('http:192.168.1.54:8080/downloadFiles', '/Users/User/Library/Application Support/iPhone Simulator/5.0/Applications/408DBBC7-67F7-4E8B-B41C-663CDC0377B5/Documents/image5_1.jpg.txt.svg', {foo: 'bar'}, 'myPhoto', 'image5_1.jpg.txt.svg', 'image/svg', 
               function(result) { 
               console.log('Done: ' + result); 
               }, 
               function(result) { 
               console.log("Error: " + result); 
               }, 
               function(loaded, total) { 
               var percent = 100/total * loaded; 
               console.log('Uploaded ' + percent); 

               } 
               ); 

в fileupload.js есть метод cordova.addConstructor. но в моем созданном файле cordova.1.6.0.js такого метода нет. Я не знаю, что происходит. PL помогите мне работать с этим плагином.

+0

привет всем, помогите мне для моего вышеуказанного вопроса. Мне нужен ответ. – mmathan

ответ

0

Я нашел решение. в файле кордовы api есть параметры загрузки и загрузки. его рабочий штраф. код,

document.addEventListener("deviceready", onDeviceReady, false); 

      // Cordova is ready 
      // 
      function onDeviceReady() { 
       window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail); 
      } 

      function gotFS(fileSystem) { 
       fileSystem.root.getFile("image5_2.jpg.svg", {create: true, exclusive: false}, gotFileEntry, fail); 
      } 

      function gotFileEntry(fileEntry) { 
       var localpath=fileEntry.fullPath; 
       uploadPhoto(localpath); 
       //fileEntry.createWriter(gotFileWriter, fail); 
      } 

      function uploadPhoto(imageURI) { 
       alert(imageURI); 
       var options = new FileUploadOptions(); 
       options.fileKey="file"; 
       options.fileName="image5_2.jpg.svg"; 
       options.mimeType="image/svg+xml"; 

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

       options.params = params; 

       var ft = new FileTransfer(); 
       ft.upload(imageURI, "http://192.168.1.54:8080/POC/fileUploader", win, fail, options); 
      } 

      function win(r) { 
       console.log("Code = " + r.responseCode); 
       console.log("Response = " + r.response); 
       console.log("Sent = " + r.bytesSent); 
      } 

      function fail(error) { 
       alert("An error has occurred: Code = " + error.code); 
       console.log("upload error source " + error.source); 
       console.log("upload error target " + error.target); 
      } 

PL использование это.

Смежные вопросы