2016-12-07 15 views
0

최근에 내 앱 (iOS)에서 사진과 동영상을 업로드 할 수 없다고 생각했습니다. 조사가 끝나면 window.resolveLocalFileSystemURL 함수는 항상 실패하고 { "code": 5}를 반환합니다. 그러나 최근까지는 괜찮 았고 Android에서이 문제를 해결하지 못했습니다.window.resolveLocalFileSystemURL이 코드 5를 반환합니다.

$('#take_picture').click(function(){ 
    navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 60, destinationType: Camera.DestinationType.FILE_URI, correctOrientation: true, targetHeight: 621, targetWidth: 621 }); 
}); 
$('#take_video').click(function(){ 
    var options = { limit: 1, quality: 0, duration: 10 }; 
    navigator.device.capture.captureVideo(onCaptureSuccess, onCaptureFail, options); 
}); 

function onCaptureSuccess(mediaFiles) { 
    var i, len; 
    for (i = 0, len = mediaFiles.length; i < len; i += 1) { movePic(mediaFiles[i].fullPath); } 
} 

function onPhotoDataSuccess(imageURI) { 
    if (device.platform == 'iOS') { file = file.replace('/private/', 'file:///'); } 
    movePic(imageURI); 
} 
function movePic(file){ 
    window.resolveLocalFileSystemURL(file, resolveOnSuccess, function(data){ alert(JSON.stringify(data)); }); 
} 

변수 파일이 파일처럼 : 내 코드는 다음과 같다 ///var/mobile/Containers/Data/Application/UID/tmp/cdv_photo_021.jpg

당신은 알고 계십니까 무엇을 내가해야 작동하도록 만드시겠습니까?

+0

응용 프로그램 디렉토리에 쓰기를 시도하고 있습니까? 그렇다면 잘 할 수 있을지 확신하지 못합니다. https://cordova.apache.org/docs/ko/latest/reference/cordova-plugin-file/#ios-file-system-layout –

+0

의견을 보내 주셔서 감사합니다. . 사실 그것은/tmp/폴더가 writtable다는 것을 언급 한 페이지에 따라 이전에 잘 작동했습니다. – Pierre

+0

인코딩 영역을받은 시간은 대개 쓸 수없는 폴더에 쓰려고 할 때입니다. 나는이 이론을 시험하기 위해 파일을 다른 곳으로 쓰려고 노력하고있다. –

답변

0

마지막으로, Phonegap, 업데이트 된 Cordova-ios를 완전히 제거/재설치 했으므로 코드 줄을 수정하지 않아도이 문제가 해결되었습니다.