在Phonegap中将Base64转换为Blob?

时间:2014-05-16 18:20:38

标签: javascript android cordova base64 blob

我正在尝试将base64图像数据发送到Amazon S3。为此,我使用此函数将base64字符串转换为blob。

function dataURItoBlob(dataURI) {
    var binary = atob(dataURI.split(',')[1]);
    var array = [];
    for(var i = 0; i < binary.length; i++) {
        array.push(binary.charCodeAt(i));
    }
    console.log("made it past atob");
    var z = [new Uint8Array(array)];//phonegap stops here  :(
    console.log("made it past Uint8Array")
    return new Blob(z, {type: 'image/png'});
}

它适用于Chrome,Safari和Firefox。

但是,在Android 4.3上的电话号码中,[new Uint8Array(array)];的联系失败 我认为Weinre报告的原因是“让它过去了atob”而不是“让它超越了Uint8Array”。

有没有人有办法将base64转换为在phonegap中运行的blob?

或者可能是一个不依赖Uint8Array的函数?

0 个答案:

没有答案