Плагин передачи файлов устарел некоторое время (более года), и вам, вероятно, не стоит тратить слишком много времени на то, чтобы плагин передачи файлов заработал.Я бы порекомендовал следовать инструкциям в сообщении в блоге о том, как передать файл api .
Итак, для вашего кода (не проверено, но должно работать):
window.requestFileSystem(cordova.file.dataDirectory, 0, function (fs) {
console.log('file system open: ' + fs.name);
fs.root.getFile(fileName, { create: true, exclusive: false }, function (fileEntry) {
console.log('fileEntry is file? ' + fileEntry.isFile.toString());
var oReq = new XMLHttpRequest();
// Make sure you add the domain name to the Content-Security-Policy <meta> element.
oReq.open("GET", "http://developer.android.com/assets/images/home/ics-android.png", true);
// Define how you want the XHR data to come back
oReq.responseType = "blob";
oReq.onload = function (oEvent) {
var blob = oReq.response; // Note: not oReq.responseText
if (blob) {
fileEntry.createWriter(function (fileWriter) {
fileWriter.onwriteend = function() {
console.log("Successful file write...");
};
fileWriter.onerror = function (e) {
console.log("Failed file write: " + e.toString());
};
fileWriter.write(blob);
});
} else {
console.error('we didnt get an XHR response!');
}
};
oReq.send(null);
}, function (err) {
console.error('error getting file! ' + err);
});
}, function (err) {
console.error('error getting persistent fs! ' + err);
});