我正在尝试查看已下载的pdf,但没有运气显示它。
这是我下载和显示文件的代码。当我尝试打开文件时,我收到一条警告,说无法查看文件。
的jQuery
// Download edition's pdf file
function downloadFile(filename){
var localDir = cordova.file.dataDirectory;
// Validate if file exist before download
window.resolveLocalFileSystemURL(localDir + filename, function(){
ShowPDF(localDir + filename);
}, function(){
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0,
function onFileSystemSuccess(fileSystem) {
fileSystem.root.getFile(
"index.html", {create: true, exclusive: false},
function gotFileEntry(fileEntry) {
//var sPath = fileEntry.fullPath.replace("index.html","");
var localDir = cordova.file.dataDirectory;
var fileTransfer = new FileTransfer();
fileEntry.remove();
fileTransfer.download(
path + filename,
localDir + filename,
function(theFile) {
ShowPDF(theFile.toURI());
console.log("download complete: " + theFile.toURI());
},
function(error) {
console.log("download error source " + error.source);
console.log("download error target " + error.target);
console.log("upload error code: " + error.code);
console.log(error);
}
);
}, fail);
}, fail);
});
};
// Show downloaded pdf
function ShowPDF(filePath){
window.open(filePath, '_system', 'location=yes')
};
修改 我刚刚意识到这部分也将使用浏览器下载文件,然后您可以查看下载的文件。
window.open(path + filename, '_system', 'location=yes');
我需要在显示本地文件之前验证文件是否已经下载。
更新
我按照此answer但仍无法查看本地文件