Cordova File API: проблема GetFile в Android

Среда: Android

внутри приложения я создаю файл на месте "/data/data/com.my.app/changes/123456789/123456789.json"и я перепроверил, что файл существует с помощью пользовательского плагина Cordova Android.

При попытке получить доступ к этому файлу с помощью Cordova File API, как показано ниже. API просто не дает 1000 кодов.

var path = "/changes/123456789/123456789.json"
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, 
                    function(fileSystem){
                        console.log('in got FS');
                        fileSystem.root.getFile(path,{create:true, exclusive: false},
                                function(fileEntry){
                                    console.log('gotFileEntry');
                                },
                                function(err){
                                    console.log('gotFileEntry fail');
                                    console.log('err.code');
                                    console.log(err.code);

                                    }
                                );

                    }, 
                    function(){
                        console.log('fail');
                        }
                    );

Я получаю код ошибки как "1000", который я считаю "файл не найден".

В соответствии с новым плагином документации путь к файлу должен быть относительно корня файловой системы. Я думаю, что проблема заключается в том, как я передаю путь к файлу.

То же самое работает при тестировании на устройстве iOS, проблема только с ANDROID.

Пожалуйста, дайте мне знать, где именно я иду не так. Как я полностью застрял. Любая помощь высоко ценится.

заранее спасибо.

1 ответ

Решение

Привет после долгих копаний файла api Cordova и с помощью поста, смог получить доступ к файлам в ANDROID.

используемый

window.resolveLocalFileSystemURL(cordova.file.dataDirectory, function(dir) {
    console.log("got main dir",dir);
    dir.getFile("log.txt", {create:true}, function(file) {
        console.log("got the file", file);

    });
});

чтобы получить запись файла в Android. это прекрасно работает и для iOS.

Другие вопросы по тегам