我是stackoverflow的新手。这是我第一次使用Phonegap而且我遇到了问题。我需要创建一个表,然后通过单击每个元素开始下载pdf文件并创建一个新文件夹(如果它不存在)。但是在使用phonegap编译后我甚至无法下载文件。我看到的所有例子,只需通过onload下载图像。
<script type="text/javascript">
function downloadFile(){
var url = 'http://http://legalespymes.com.ar/legalespymes/abonos/aseguradoras.pdf';
var filePath = 'local/path/to/your/file';
var fileTransfer = new FileTransfer();
var uri = encodeURI(url);
fileTransfer.download(
uri,
filePath,
function(entry) {
console.log("download complete: " + entry.fullPath);
},
function(error) {
console.log("download error source " + error.source);
console.log("download error target " + error.target);
console.log("upload error code" + error.code);
},
false,
{
headers: {
"Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
}
}
);
}
</script>
HTML
<td onclick="downloadFile()">Row 1</td>
答案 0 :(得分:0)
首先,您的网址无效多次包含http
var url = 'http://http://legalespymes.com.ar/legalespymes/abonos/aseguradoras.pdf';
像这样改变
var url = 'http://legalespymes.com.ar/legalespymes/abonos/aseguradoras.pdf';
如果您在该目录中创建多个目录和存储文件,则可能会产生问题。(示例[project / sample / local]未创建同一时间。因此文件无法下载)。并确保文件下载插件可用于config.xml并指定phonegap版本。
使用此代码在时间创建多个目录。
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
// create directory
function gotFS(fileSystem) {
window.FS = fileSystem;
var printDirPath = function(entry){
console.log("Dir path - " + entry.fullPath);
}
createDirectory("local/path/to/your", printDirPath);
}
function fail() {
console.log("failed to get filesystem");
}
function createDirectory(path, success){
var dirs = path.split("/").reverse();
var root = window.FS.root;
var createDir = function(dir){
console.log("create dir " + dir);
root.getDirectory(dir, {
create : true,
exclusive : false
}, successCB, failCB);
};
var successCB = function(entry){
root = entry;
if(dirs.length > 0){
createDir(dirs.pop());
}else{
success(entry);
}
};
var failCB = function(){
};
createDir(dirs.pop());
}
现在编写文件下载代码。