我可以使用什么作为readAsDataURL方法的替代方法来获取base64编码的数据URL

时间:2014-09-21 01:30:57

标签: javascript

我正在开发一个Phonegap应用程序,它会录制音频并将音频上传到我的服务器。下面的代码允许我使用readAsDataURL方法读取录制的音频文件并将数据作为base64编码的数据URL返回,然后在警告框中显示该URL。该代码在Android上完美运行,但在ios上运行不正常。关于ios的文档说:“不支持iOS Quirks编码参数,总是使用UTF8编码。” 所以我想知道是否有人可以为我提供另一种选择。我只希望最终结果与Android上的结果相同,这是一个显示数据网址的警告框。我知道警报框可能无法显示整个网址。我只使用警报框进行确认。我希望我的变量将数据url存储在其中。

我的代码:

function gotFS(fileSystem) {
fileSystem.root.getFile("myaudio.wav", null, gotFileEntry, fail);
}

function gotFileEntry(fileEntry) {
fileEntry.file(gotFile, fail);
}

function gotFile(file){
readDataUrl(file);
}

function readDataUrl(file) {
var reader = new FileReader();
reader.onloadend = function(evt) {
    console.log("Read as data URL");
    console.log(evt.target.result);
    var theFile = evt.target.result;
    alert(theFile); //shows data url on Android
};
    reader.readAsDataURL(file);
}

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, function fail(){});

0 个答案:

没有答案