7

我正在使用phonegap 2.2.0。我尝试了一些代码来循环播放音频而不会中断,但它在我的 android 设备上不起作用。它只播放一次。这是我的代码:

 


    function playAudio(url) {

        var my_media = new Media(url,
            function() {
                console.log("playAudio():Audio Success");
            },
            function(err) {
                console.log("playAudio():Audio Error: "+err);
            },
            function(status) {
                console.log("playAudio():Audio Status: "+status);
            }
        });

        // Play audio
        my_media.play({numberOfLoops:99});
    }


你能告诉我这里有什么问题吗?

4

2 回答 2

12

聆听状态变化并开始支付 MEDIA_STOPPED。如果您希望用户停止声音,请使用 snd.pause() 而不是 snd.stop()

这对我有用:

    document.addEventListener("deviceready", onDeviceReady, false);

    var getPhoneGapPath = function() {
        var path = window.location.pathname;
        path = path.substr( path, path.length - 10 );
        return path;
    };

    var snd = null;

    function onDeviceReady(){
        snd = new Media( getPhoneGapPath() + "sound/funk_game_loop.mp3", onSuccess, onError, onStatus);
        snd.play();
    }

    // onSuccess Callback
    function onSuccess() {
    }
    // onError Callback 
    function onError(error) {
    }
    // onStatus Callback 
    function onStatus(status) {
        if( status==Media.MEDIA_STOPPED ) {
            snd.play();
        }
    }
于 2013-03-04T03:30:31.850 回答
3

在 Phonegap 中,Android 尚不支持循环播放 - 因此 numberOfLoops 除了在 iOS 设备上什么都不做。

于 2013-01-09T06:30:45.423 回答