나는 안드로이드 장치에 pdf BLOB를 저장하고 싶은 프로그램을 만들고 있습니다. 이것은 '결과'로 pdf 데이터를받는 콜백 내부의 서버 측 코드입니다.Cordova 안드로이드 앱에서 장치에 blob을 다운로드하기
var file = new Blob([result.data], {
type: 'application/pdf;charset=utf-8;'
});
return file;
});
클라이언트 측에서 다음 코드는 크롬 디버깅 브라우저에서 작동하며 pdf가 성공적으로 다운로드됩니다. 여기
11-18 18:13:27.255 10504-10707/? D/FileTransfer: download blob:file:///e9088aac-8525-4071-9280-164a6e15c22e to file:///storage/emulated/0/Download/loanContract_11-10-2016_9-29-59-715.pdf
11-18 18:13:27.255 10504-10707/? E/FileTransfer: Unsupported URI: blob:file:///e9088aac-8525-4071-9280-164a6e15c22e
데이터 window.URL.createObjectURL (데이터)의 서버에 의해 반환 된 파일 BLOB 인 : 그러나 장치에서 나는 다음과 같은 오류가 발생합니다. Phonegap/Cordova 3.6 - Download of file through blob:file 문제를 푸는데 도움이되지 못했습니다. 내가 HTTP 응답으로 pdf 파일을 전송하는 URL을주고 내가 cordovaFileTransfer.download에 매개 변수 URI로 API의 URL을 제공하는 경우
var fileURL = window.URL.createObjectURL(data);
$scope.content = data;
a.href = fileURL;
a.download = fileName;
a.click();
console.log("Inside parent function");
$scope.fileName = fileName;
window.resolveLocalFileSystemURL(cordova.file.externalRootDirectory, function (dirEntry) {
download($scope.fileURL, dirEntry.toURL()+'Download/'+ $scope.fileName) ;
}, function() {});
var download = function (uri, fileURL) {
$cordovaFileTransfer.download(
uri,
fileURL,
function (success) {
console.log(success);
},
function (err) {
console.log(err);
}, true)
};
는 다음 PDF 파일이 저장됩니다. 이 밥을 기기에 PDF로 저장하는 것을 도와주세요.