【发布时间】:2013-09-01 17:40:48
【问题描述】:
我正在为朋友构建一个 Phonegap 应用程序,我打算让人们在手机上录制音频,将其保存到浏览器的本地存储中,然后稍后再上传。
AFAIK,你不能在本地存储中存储二进制文件,所以我试图将此文件转换为 base64,但到目前为止我无法让它按照我想要的方式工作。
var file = document.getElementById('audioinput').files[0];
var url = window.URL.createObjectURL(file);
encodedAudio = windows.btoa(url);
所有这些都是将链接编码到临时存储文件的 blob。如何编码实际的音频文件?
【问题讨论】:
-
我可以想象数据的大小......糟糕的本地存储......
-
保存到浏览器本地存储? :O 请哥们,说一下手机的本地存储。连soundcloud之类的音频网站都使用手机本地存储来录制音频,命名吧!并从那里上传。您可能需要阅读手机的 API 来创建音频,然后通过选择它从那里上传。
-
@VisioN true :) 它主要是短 sn-ps 所以应该没问题(希望 :))
标签: javascript html cordova base64 local-storage