如何启动第二个媒体播放器..?

时间:2012-11-08 07:34:52

标签: java android

我正在开发一个应用程序,我想播放两个mp3文件,一个是背景音乐,另一个音频播放20秒。

    mediaPlayer = MediaPlayer.create(this, R.raw.testsong_20_sec); 
    mediaPlayer1 = MediaPlayer.create(this,R.raw.sound3 ); 
    private void buttonClick(){

    if (buttonPlayStop.getText() == getString(R.string.play_str)) {

    buttonPlayStop.setText(getString(R.string.pause_str));

    try
    {
    mediaPlayer.start();
    mediaPlayer1.start();

    startPlayProgressUpdater();
    }
    catch (IllegalStateException e) {
    mediaPlayer.pause();
    }

    } 

2 个答案:

答案 0 :(得分:0)

使用MediaPlayer播放背景音乐,使用SoundPool播放其他所有内容。

答案 1 :(得分:0)

你可以在一个线程中使用这段代码在Mediaplayer中播放两个文件(不要使用UI线程):

mediaplayer = new MediaPlayer();

mediaplayer.reset();

//For media file 1

mediaplayer.setDataSource(dataSourceOne);

mediaplayer.prepare();

mediaplayer.start();

Thread.sleep(500);//Set the time as per your need.

//For media file 2

mediaplayer.reset();

mediaplayer.setDataSource(dataSourceTwo);


mediaplayer.setLooping(true);

mediaplayer.prepare();

mediaplayer.start();

根据更好的实现透视图,使用所有常用方法(play(),pause(),stop())编写一个util类,并使用线程根据需求调用类中的每个方法。