Failed to delete the file using the cord?

I save the file here: /storage/emulated/0/myApp/helloworld.wav

I am trying to delete this file

        window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, successCallback, errorCallback)

        function successCallback(fs) {
            fs.root.getFile('/storage/emulated/0/myApp/helloworld.wav', {
                create: false
            }, function(fileEntry) {
                fileEntry.remove(function() {
                    alert('File removed.');
                }, errorCallback);
            }, errorCallback);
        }

        function errorCallback(error) {
            alert("ERROR: " + error.code)
        }

It does not delete the file and always returns error code 1(not found). Can someone help me point out what is wrong.

when I check the file manager, this is a physical file: /storage/emulated/0/myApp/helloworld.wavbut it always returns error code 1

0
source share
2 answers

I feel the bottom line may be the problem, " window.requestFileSystem (LocalFileSystem.PERSISTENT, 0, successCallback, errorCallback) "

, , , requestfilsystem LocalFileSystem.PERSISTENT android, .

, - window.resolveLocalFileSystemURL(cordova.file.externalRootDirectory, successCallback, errorCallback); "

. , . , .

,

function clearDirectory() {

    if (sessionStorage.platform.toLowerCase() == "android") {
        window.resolveLocalFileSystemURL(cordova.file.externalRootDirectory, onFileSystemDirSuccess, fail);
    } else {
        //for ios
        window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemDirSuccess, fail);
    }
};

function onFileSystemDirSuccess(fileSystem) {
    var entry = "";
    if (sessionStorage.platform.toLowerCase() == "android") {
        entry = fileSystem;
    } else {
        //for ios
        entry = fileSystem.root;
    }
    entry.getDirectory("Folder_Name", {
            create: true,
            exclusive: false
        },
        function(entry) {
            entry.removeRecursively(function() {
                console.log("Delete successful !!!");
            }, fail);
        }, getDirFail);
};

function getDirFail(error) {
    alert("getDirFail - " + error.code);
};

function fail(error) {
    alert("fail - " + error.code);
};

:

function writeFile() {
            if (sessionStorage.platform.toLowerCase() == "android") {
                window.resolveLocalFileSystemURL(cordova.file.externalRootDirectory, onFileSystemSuccess, onError);
            } else {
                window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, onError);
            }

        }    

        function onError(e) {
            alert("onError");
        };

        function onFileSystemSuccess(fileSystem) {
            var entry = "";
            if (sessionStorage.platform.toLowerCase() == "android") {
                entry = fileSystem;
            } else {
                entry = fileSystem.root;
            }
            entry.getDirectory("Folder_Name", {
                create: true,
                exclusive: false
            }, onGetDirectorySuccess, onGetDirectoryFail);
        };

        function onGetDirectorySuccess(dir) {
            dir.getFile(filename, {
                create: true,
                exclusive: false
            }, gotFileEntry, errorHandler);
        };

        function gotFileEntry(fileEntry) {
            // logic to write file in respective directory
        };

        function errorHandler(e) {
            // handle error
        }
+2

, , , , .

: cordova-plugin-file

, . (Android, iOS, Blackberry ..).

0

Source: https://habr.com/ru/post/1665842/


All Articles