iOS上的Phonegap 3.5媒体插件错误"无法使用AvAudioRecorder开始录制"

Ver*_*ero 5 audio ios phonegap-plugins cordova

我试图让用户在Phonegap应用程序中录制音频文件.它适用于Android,但在iOS上我应该开始录制时出现以下错误:

"无法使用AvAudioRecorder开始录制".

我使用.wav文件名,我先创建文件,我已经按照我发现的所有说明操作,并且一直收到错误.

这是一段代码:

theFileSystem.root.getFile(filename,{create:true},function(fileEntry){
    mediaFileURL = fileEntry.toURL();
    console.log('Created file ' + mediaFileURL);
    mediaRec = new Media(mediaFileURL, function(){
        //console.log('Media File created');
    }, function(err){
        alert('Error creating the media file: ' + err.message);
        console.log(mediaFileURL);
        for(k in err){
            console.log(k + ': ' + err[k]);
        }            
        stopRecordingFile();
    });
    mediaRec.startRecord();
},function(err){
    alert("Error setting audio file"); 
});    
Run Code Online (Sandbox Code Playgroud)

我看到控制台消息'Created file ...',因此文件已成功创建.然后我得到了错误.

媒体插件版本为0.2.11

我不知道还有什么可以尝试的.谢谢你的帮助.

Ver*_*ero 6

我自己解决了这个问题

我会在这里留下解决方案以防万一.

对于iOS,需要更改:

mediaFileURL = fileEntry.toURL();
Run Code Online (Sandbox Code Playgroud)

对此:

mediaFileURL = fileEntry.fullPath;
Run Code Online (Sandbox Code Playgroud)

此外,即使我请求持久文件系统,iOS也将文件保存在tmp文件夹中.所以为了使用FileTransfer上传文件,我用它来引用文件(我尝试了不同的方法,这是有效的方法):

sendFileURL = cordova.file.tempDirectory + filename;
Run Code Online (Sandbox Code Playgroud)