在Android的应用程序的背景播放连续音频?

时间:2014-12-29 07:11:15

标签: android audio android-mediaplayer

我已经制作了一个Android应用程序,我想在后台播放连续音频。我已成功启动音频,但当我停止音频时它再次启动。我的代码如下,请建议我任何解.. 的

 public static void PlayMusic(Context context){

mediaPlayer = MediaPlayer.create(context, R.raw.saturday);

 if(!mediaPlayer.isPlaying()){
       mediaPlayer.start();
       Toast.makeText(context,
         "soundPool.pause()",
         Toast.LENGTH_LONG).show();
   }

else {
       mediaPlayer.stop();
       Toast.makeText(context,
         "soundPool.pause()",
         Toast.LENGTH_LONG).show();
   }
}

2 个答案:

答案 0 :(得分:0)

将播放器设置为循环或非循环。

 mediaPlayer.setlooping(true)

答案 1 :(得分:0)

使用此方法播放声音

private void play(String uriString) {
        // TODO Auto-generated method stub
        Uri uri = Uri.parse(uriString);

        if (uri != null) {
            // in order to play the ringtone, you need to create a new Ringtone
            // with RingtoneManager and pass it to a variable
            try {
                mPlayer = new MediaPlayer();
                mPlayer.setDataSource(this, uri);
                final AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
                if (audioManager.getStreamVolume(AudioManager.STREAM_RING) != 0) {
                    mPlayer.setAudioStreamType(AudioManager.STREAM_RING);
                    mPlayer.setLooping(true);
                    mPlayer.prepare();
                    mPlayer.start();
                }
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
    }

并使用 -

停止播放的声音
if (mPlayer != null) {
                    mPlayer.stop();
                }

希望这会对你有所帮助。