android - Phonegap - FileReader 不调用/加载

标签 android jquery phonegap-plugins filereader

我需要使用移动应用程序将照片上传到服务器。我使用以下代码来读取文件。

if (filesSelected.length > 0)
                {
                    alert("lenth great than zero");
                    var fileToLoad = filesSelected[0];

                    var fileReader = new FileReader();

                    fileReader.onload = function(fileLoadedEvent) {
                        var srcData = fileLoadedEvent.target.result; // <--- data: base64

                        var newImage = document.createElement('img');
                        newImage.src = srcData;
                        base64_string = newImage.outerHTML;
                        alert(srcData + "srouce data  now");

                    }
                    fileReader.readAsDataURL(fileToLoad);
                    *** SERVICE CALL Comes Here ***
                }

从代码 filesSelected.length 始终返回大于零 (0) 的值(即,如果图像可用),并提醒“lenth 大于零”,并且不提醒 srcData +“srouce data now” 。

我猜 fileReader 没有在它之后调用/调用。那么谁能帮我解决这个问题。

如果您需要代码中的更多内容,请告诉我。

最佳答案

cordova/phonegap API 3.6.0 文档中还有另一种加载方法(是 onloadend,不是 onload)。 https://cordova.apache.org/docs/en/3.0.0/cordova_file_file.md.html

function win(file) {
    var reader = new FileReader();
    reader.onloadend = function (evt) {
        console.log("read success");
        console.log(evt.target.result);
    };
    reader.readAsDataURL(file);
};

var fail = function (evt) {
    console.log(error.code);
};

entry.file(win, fail);

关于android - Phonegap - FileReader 不调用/加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32332453/

相关文章:

cordova - 如何解决或绕过错误 websocket : origin not allowed

javascript - 命名回调函数不起作用

android - 可以在 RelativeLayout 内部的表面上使用 setFixedSize 吗?

android - Unity 导出 Android 64 位

javascript - 试图让移动菜单架工作

javascript - 使用 Javascript 移动 DOM 对象

android - 如何处理 API21 中的 shouldInterceptRequest 参数更改?

android - 如何在 doInBackground() 时显示对话框。异步任务

javascript - 如何在 WordPress 插件中使用 Ajax?

android - 使用 PhoneGap 插件 : Child Browser