Android上的Cordova getFile Error,没有错误代码

时间:2016-08-11 22:40:52

标签: javascript android cordova

我正试图在我的问题上找到任何内容,并且完全是空的,我想我已经搜索了大约五六个完整的谷歌搜索页面。

我有一个使用cordova构建的应用程序。我需要它为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

我再说一遍,并且找不到任何可靠的错误来源。任何帮助,提示,指示等,将不胜感激!提前谢谢!

1 个答案:

答案 0 :(得分:0)

将Cordova文件插件更新到最新版本(4.3.1dev)解决了这个问题,因为它很可能是由插件本身的错误代码引起的。

无论传递何种数据和目标路径,IStoppablegetFile(...)都返回了“JSON错误”代码(未记录)。

使用fileWriter.write(...)插件(几乎完全依赖本机代码)创建文件并没有任何困难。