所以,我目前正在尝试通过cordova文件插件读取我刚刚保存在应用程序目录(Android)上的音频文件,但我一直得到相同的错误代码5,代表“ENCODING_ERR”。
这是我创建文件并开始录制的方式
start() {
this.filename = this.file.externalDataDirectory.replace(/file:\/\//g, '');
this.mediaobject = this.media.create(this.filename + 'audioprofile' + '.3gp');
this.mediaobject.startRecord();
}
这就是我停止录制和保存文件的方法
stop() {
this.mediaobject.stopRecord();
this.mediaobject.release();
...
这就是我被困住的地方:保存之后,我需要把它作为一个字符串,所以我试着读它(alert(content)
应该告诉我那个字符串)
stop() {
this.mediaobject.stopRecord();
this.mediaobject.release();
this.storage.get("uid").then((id) => {
try{
this.file.readAsDataURL(this.filename,'audioprofile'+'.3gp').then((filecontent)=>{
alert(filecontent);
},(err)=>{
alert(err.code);
})
} `
经过一些研究后我发现它可能意味着我没有为它提供正确的路径,但我已经尝试了所有内容,“filename”和“filepath”的任意组合都已经完成,甚至在start()上添加了前缀。
我想知道是否有人设法用这个cordova插件读取文件,如果你这样做,请帮助我。
在此先感谢,这是我在这里的第一篇文章\ o /(虽然我一直使用网站,但是爱你们)。
好吧,我设法用File-Path插件做到这一点,它以File Plugin理解并能够到达文件的方式解析文件的Path,然后你只需要按照你想要的方式操作它。
我有同样的问题。我解决了这个问题:
this.media.create(this.file.externalDataDirectory + this.nameFile);
我不知道为什么但qazxsw poi无法读取文件,如果你保存它删除qazxsw poi 请记住在所有方法中更改路径。