PhoneGap iOS - media.startRecord文件URI不起作用

时间:2012-02-12 16:20:45

标签: ios audio cordova media

我正在尝试使用PhoneGap API文档中所述的录音。但在IOS上,myrecording.wav的文件URI似乎存在问题。我使用以下代码写入名为myrecodring.wav的文件

function recordAudio() {
        var src = "myrecording.wav";
        var mediaRec = new Media(src, onSuccess, onError);

        // Record audio
        mediaRec.startRecord();

        // Stop recording after 10 sec
        var recTime = 0;
        var recInterval = setInterval(function() {
            recTime = recTime + 1;
            setAudioPosition(recTime + " sec");
            if (recTime >= 10) {
                clearInterval(recInterval);
                mediaRec.stopRecord();
            }
        }, 1000);
    }

我也尝试过file://myrecording.wav和file:///myrecording.wav 我已经在ios5 iphone 4gs上完成了测试。我收到失败消息,代码1说"无法使用资源中的音频文件...."

谢谢你的帮助, 马丁

1 个答案:

答案 0 :(得分:0)

你必须首先获得文件系统:

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

然后获取文件:

function gotFS(fileSystem) {
    alert('got FS');
    fileSystem.root.getFile("myrecording4.wav", {create: true, exclusive: false}, gotFileEntry, fail);
}

现在您可以获取文件URI:

function gotFileEntry(fileEntry) {
        alert('File URI: ' + fileEntry.toURI());
}