繁体   English   中英

Android Cordova中的文件错误

[英]File Errors in Android Cordova

我以为我会发布此内容,因为它可能对其他人有用,我在将文件存放在Android / Cordova混合应用程序中时一直在尝试错误反馈。 以下代码块应该使它更容易-但是,任何改进的指针都非常受欢迎。

    fail: function(error) { 
        var logger = cordova.require("salesforce/util/logger");

        switch(error.code)
        {
            case FileError.NOT_FOUND_ERR:
                logger.logToConsole("File Not Found");
                break;
            case FileError.SECURITY_ERR:
                logger.logToConsole("Security Error");
                break;
            case FileError.ABORT_ERR:
                logger.logToConsole("Abort error");
                break;
            case FileError.NOT_READABLE_ERR:
                logger.logToConsole("Not Readable");
                break;
            case FileError.ENCODING_ERR:
                logger.logToConsole("Encoding Error");
                break;
            case FileError.NO_MODIFICATION_ALLOWED_ERR:
                logger.logToConsole("No Modification Allowed");
                break;
            case FileError.INVALID_STATE_ERR:
                logger.logToConsole("Invalid State");
                break;
            case FileError.SYNTAX_ERR:
                logger.logToConsole("Syntax Error");
                break;
            case FileError.INVALID_MODIFICATION_ERR:
                logger.logToConsole("Invalid Modification Error");
                break;
            case FileError.QUOTA_EXCEEDED_ERR:
                logger.logToConsole("Quota Exceeded");
                break;
            case FileError.TYPE_MISMATCH_ERR:
                logger.logToConsole("Type Mismatch Error");
                break;
            case FileError.PATH_EXISTS_ERR:
                logger.logToConsole("Path Already Exists Error");
                break;
        }
        logger.logToConsole("Error code:: " + error.code);
    }

这是导致问题的文件保存例程(原来它需要CREATE:true标志)。 希望对您有所帮助。

saveLocal: function (file, data, sync) {

        //Accept the JSON of an Inspection object
        cordova.require("salesforce/util/logger").logToConsole("Writing to " + file);

        //Write data to the requested file
        window.requestFileSystem(LocalFileSystem.PERSISTENT, 0,                     
                function(fileSystem) {
                    cordova.require("salesforce/util/logger").logToConsole("Writing to " + file);

                    fileSystem.root.getFile(file, {create: true}, 
                            function(fileEntry) {
                                cordova.require("salesforce/util/logger").logToConsole("Create writer");

                                fileEntry.createWriter(function (writer) {
                                        writer.write(JSON.stringify(data));

                                         //Trigger to send data to salesforce
                                         if (sync) {sync();}

                                         //send to event if registered
                                         if (onsaveend) {onsaveend(data);}

                                }, anytime.fail);

                    }, anytime.fail);
                }, anytime.fail);
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM