2016-04-26 10 views
0

Ich habe versucht, das gesamte Verzeichnis (der Ordner + Dateien unter dem Ordner) zu löschen, welche Dateien in das externe Speicherbasisverzeichnis heruntergeladen wurden: cordova.file.externalDataDirectory (like "Datei /// Speicher/emuliert/0/Android/data/com.yourapp/files").Cordova/Ionic - So entfernen Sie externe Speicherdatei und Verzeichnis

Aber als ich versuchte, das Verzeichnis rekursiv von $ cordovaFile zu entfernen, wie unten:

var baseDirectory = cordova.file.externalDataDirectory + 'attachments'; 
    $cordovaFile.removeRecursively(baseDirectory,"") 
     .then(function(success){ 
     console.log('Clear success'); 
     },function(err){ 
     loadingService.hideLoading(); 
    }) 

Es NO_MODIFICATION_ALLOWED Fehler führt: no_modification_allow_error

Während ich den Ordner Erlaubnis zu überprüfen, kann ich den Schreib haben/führe rechts aus. Hat jemand eine Idee, warum das passiert?

BTW, ich habe auch versucht, die window.requestFileSystem leider immer noch arbeiten out.Since nicht das Dateisystem lokale Dateisystem ist, habe ich versucht, den Eintrag zu externen Dateisystem zu ändern, wie

entry.nativeURL = cordova.file.externalDataDirectory; 

Aber ich denke, es wird nicht funktionieren, da der Leser nichts hat. Hat jemand irgendwelche Vorschläge, wie man das ganze Verzeichnis entfernen kann?

Vielen Dank im Voraus!

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, fail); 
    function fail(evt) { 
     console.log("FILE SYSTEM FAILURE" + evt.target.error.code); 
    } 

    function onFileSystemSuccess(fileSystem) { 
     fileSystem.root.getDirectory(
     "attachments", 
     {create : true, exclusive : false}, 
     function(entry) { 
      console.log(entry); 
      entry.nativeURL = cordova.file.externalDataDirectory; 
      var reader = entry.createReader(); 
      reader.readEntries(
      function(entries){ 
       console.log(entries); 
      }, 
      function(err){ 
       console.log(err); 
      } 
     ) 

      entry.removeRecursively(function() { 
      console.log('CLEAR success'); 
      }, fail); 
     }, fail); 
    } 
+0

Jede Lösung mit Fehlercode 6 >> –

Antwort

0

Falls Sie Android Eibisch verwenden, gewährleisten neueste Version von cordova Datei-Plugin (4.2.0) zu verwenden, da es Probleme beheben im Zusammenhang mit Berechtigungen. Das Code-Snippet für das Löschen von Verzeichnissen lautet wie folgt: