2016-08-11 2 views
1

Я пытаюсь найти что-либо по моей проблеме и полностью опустел, и, по-моему, я искал пять или шесть полных страниц поиска Google.Ошибка Кордовы getFile на Android, код ошибки

У меня есть приложение, которое я строю с использованием кордовы. Мне нужно, чтобы он работал на IOS и Android. Я могу заставить его работать на IOS, но и на Android, независимо от того, что я сделал по-другому, я получаю следующий объект ошибки:

FileError { code : 'JSON error'} 

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

Вот мой код проекта:

var fileName = "proposal-"+projID+".pdf"; 
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fs){ 
    fs.root.getFile(fileName, {create : true, exclusive : false}, function(fileEntry){ 
     fileEntry.createWriter(function(fileWriter){ 
      fileWriter.onwriteend = function(){ 
       usSpinnerService.stop("main-spinner"); 
       cordova.plugins.fileOpener2.open(fileEntry.nativeURL,"application/pdf",{ 
        error : function(e) { 
         console.log('Error status: ' + e.status + ' - Error message: ' + e.message); 
        }, 
        success : function() { 
         console.log('file opened successfully');     
        } 
       }); 
      }; 
      fileWriter.onerror = function (e) { 
       console.log("Failed file read: " + e.toString()); 
      }; 
      fileWriter.write(blob); 
     }, function(err){ 
      usSpinnerService.stop("main-spinner"); 
      console.log(err); 
     }); 
    }, 
    function(err){ 
     usSpinnerService.stop("main-spinner"); 
     console.log(err); 
    }); 
}, 
function(err){ 
    usSpinnerService.stop("main-spinner"); 
    console.log(err); 
}); 

я делаю все правильно, в соответствии с их наиболее текущей документации, которая находится здесь:

https://cordova.apache.org/docs/ko/2.0.0/cordova/file/directoryentry/directoryentry.html

Снова я m делает все как сказано, и не может найти надежный источник этой ошибки. Любая помощь, советы, указатели и т. Д. Были бы очень признательны! Заранее спасибо!

ответ

0

Обновление плагина для файла Cordova до последней версии (4.3.1dev) решило проблему, поскольку это, скорее всего, было вызвано неправильным кодом внутри самого модуля.

Оба getFile(...) и fileWriter.write(...) возвратили код ошибки JSON (который не документирован) независимо от того, какой тип данных и путь назначения прошли.

Использование плагина FileTransfer (который почти полностью опирается на собственный код) для создания файлов не представляет никаких трудностей.

Смежные вопросы