2

我正在使用 Phonegap 创建一个 Android 应用程序(录音机),但我的代码中有以下 2 个错误:

  1. ReferenceError: Can't find variable: Media.

  2. TypeError: Result of expression 'mediaRec' undefined is not an object.

第一个错误发生在应用程序运行时。第二个错误发生在我调用 recordAudio(); 时。方法。

如果您知道,请告诉我有什么问题。

var mediaRec;
var src;
document.addEventListener("deviceready", onDeviceReady, false);

function onDeviceReady() {

}
function init() {
    document.getElementById('status').innerHTML = "Recording Status";
    src = "myrecording.mp3";
    mediaRec = new Media(src, onSuccess, onError);
}

function recordAudio() {
    // 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);
        }
    }, 1000);
}

// Stop audio
function stopRecording() {
    if (mediaRec) {
        mediaRec.stopRecord();
    }
    clearInterval(mediaTimer);
    mediaTimer = null;
}
// onSuccess Callback
function onSuccess() {
    console.log("recordAudio():Audio Success");
}
// onError Callback 
function onError(error) {
    alert('code: ' + error.code + '\n' + 'message: ' + error.message + '\n');
}
// Set audio position
function setAudioPosition(position) {
    document.getElementById('rec_position').innerHTML = position;
}

谢谢。

4

2 回答 2

0

我认为 scr = "/android_asset/www/myrecording.mp3" 因为asset/www/中的目录phonegap ...

于 2013-12-30T17:14:37.793 回答
0

请务必添加定义全局媒体构造函数的“cordova-plugin-media”插件。请参阅Cordova 媒体文档 cordova plugin add cordova-plugin-media --save

发生这种情况的另一个原因是一定要等到设备准备好 Cordova 事件后再new Media调用构造函数。

于 2016-11-17T14:48:01.200 回答