2014-04-12 2 views
2

나는 cordova 3.4.0 android에서 작업 중입니다. 이미지 업로드를 위해 FileTransfer 플러그인을 추가했습니다. 이미지가 라이브러리 및 카메라에서 제대로 작동하지만 업로드 할 때 Logcat에 업로드하지 못했습니다. processMessage failed : Error : ReferenceError : FileTransfer가 file : /// android_asset/WWW/JS/cordova.js : 1035 나는 모든 Config.xml의 설정 및 AndroidMainfest.xmlFileTransfer가 cordova에서 정의되지 않았습니다. 3.4.0

config.xml에

<feature name="File"> 
    <param name="android-package" value="org.apache.cordova.file.FileUtils" /> 
    <param name="onload" value="true" /> 
</feature> 
<feature name="FileTransfer"> 
    <param name="android-package" value="org.apache.cordova.filetransfer.FileTransfer" /> 
</feature> 

AndroidMainfest.xml

했을
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

cordova_plugins.js

{ 
    "file": "plugins/org.apache.cordova.file-transfer/www/FileTransfer.js", 
    "id": "org.apache.cordova.file-transfer.FileTransfer", 
    "clobbers": [ 
     "window.FileTransfer" 
    ] 
}, 

이미지 업로드 코드

var ft = new FileTransfer();      
var options = new FileUploadOptions();      
options.fileKey="vImage1";      
options.fileName=imagefile.substr(imagefile.lastIndexOf('/')+1); 
options.mimeType="image/jpeg"; 
var params = new Object(); 
params.value1 = "test"; 
params.value2 = "param";      
options.params = params; 
options.chunkedMode = false;      
ft.upload(imagefile, serviceURL, win, fail, options); 

그래서 코드에서 무슨 일입니까? .. 미리 감사드립니다.

는 해결 :

나는이 문제를 해결했다. HTML 페이지에 다음 플러그인 링크를 추가했습니다.

<script type="text/javascript" charset="utf-8" src="plugins/org.apache.cordova.file/www/File.js"></script> 
<script type="text/javascript" charset="utf-8" src="plugins/org.apache.cordova.file-transfer/www/FileTransfer.js"></script> 

답변

0

내가 그나마 HI 알고 무엇을 잘못

그러나 잘

var options = new FileUploadOptions(); 
     options.fileKey = "file"; 
     options.fileName = uploadimageurl.substr(uploadimageurl.lastIndexOf('/') + 1); 


     var params = {}; 
     params.value1 = "test"; 
     params.value2 = "param"; 

     options.params = params; 
     var url=unlserviceurl+""+uploadarray.fileurl; 
     var ft = new FileTransfer(); 
     ft.upload(uploadimageurl, encodeURI(url), win, fail, options); 

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

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

이 코드

+0

@ 카 히르 : 나는 또한 시도했다 ..... 오류는 파일 전송에 관한 것입니다 ... – Ved

+0

그러나이 코드는 나를 위해 – kathir

+0

코도바 3.4.0 ...? – Ved

0

확인하기 위해 함께 노력 작업이 코드 : 추가 않았다 코르도바 플러그인 파일 및 Filtransfer을 프로젝트에?

+0

이것은 대답이 아닌 대답이어야합니다. 응답 섹션을 스팸하는 대신에 평판이 나올 때까지 기다려주십시오. – Chris

관련 문제