Irgendwie bekomme ich immer einen "Fehlercode 5", wenn ich versuche, das Folgende richtig einzustellen. Was ich tun möchte, ist eine vorhandene Datei von den Assets in Android zu einem zugänglichen Ort auf dem Android-Gerät kopieren, um es in anderen Apps (wie Mail) zu teilen.Cordova: Datei unter Android mit Cordova nicht kopieren
Hier ist mein Codebeispiel:
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
var storagefolder = cordova.file.dataDirectory;
var storagefolderpointer;
console.log("storage folder: " + storagefolder);
// Check for support.
if (window.requestFileSystem) {
console.log("filesystem beschikbaar");
var getFSfail = function() {
console.log('Could not open filesystem');
};
var getFSsuccess = function(fs) {
var getDIRsuccess = function (dir) {
console.debug('Got dirhandle');
cachedir = dir;
fileurl = fs.root.fullPath + '/' + storagefolder;
storagefolderpointer = dir;
};
var getDIRfail = function() {
console.log('Could not open directory');
};
console.debug('Got fshandle');
FS = fs;
FS.root.getDirectory(storagefolder, {create:true,exclusive:false}, getDIRsuccess, getDIRfail);
};
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, getFSsuccess, getFSfail);
setTimeout(function() {
console.log("directory beschikbaar");
var suc = function(entry){
var goe = function(){
console.log("copy success");
};
var fou = function(){
console.log("copy NOT NOT success");
};
entry.copyTo(storagefolder, "vcard.vcf", goe, fou);
};
var fai = function(e){
console.log("fail getFile: " + e.code);
};
window.resolveLocalFileSystemURL(storagefolderpointer + "www/visitekaart/vcard.vcf", suc, fai);
}, 1000);
} else {
console.log("filesystem NOT NOT NOT available");
}
In Verbindung mit [dieser Ausgabe] (https://github.com/driftyco/ng-cordova/issues/506)? Siehe den 10. Kommentar – lifeisfoo
Haben Sie versucht, den Dateichooser zu verwenden? https://github.com/MaginSoft/MFileChooser –
Der Fehler ist ein 'ENCODING_ERR' wie in der Dokumentation https://github.com/apache/cordova-plugin-file, bitte geben Sie es in der Frage an, die es relevant sein könnte. –