Check if music playing in android media player API

孤人 提交于 2019-12-01 14:16:59

问题


I'm using this code below to play an audio file in android

MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource("fileSourceHere");
mediaPlayer.prepare();
mediaPlayer.start();

I have a button on that program. When click on that button, it'll check if music playing. If music playing, it'll stop that. How can I check if music playing? I tried the code below but it didn't work

if(mediaPlayer.isPlaying() == true){
 mediaPlayer.pause();
}else{
 mediaPlayer.start();
}

回答1:


Try this:

MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource("fileSourceHere");
mediaPlayer.prepare();
mediaPlayer.start();

if(mediaPlayer.isPlaying())
{
    //stop or pause your media player mediaPlayer.stop(); or mediaPlayer.pause();
    mediaPlayer.pause();
}
else
{
    mediaPlayer.start();
}



回答2:


To check if Music playing by any other app. Use

AudioManager.isMusicActive();

And if you want to know about your app music.

Add Listener to listen

mediaPlayer.setOnPreparedListener(this);

mediaPlayer.setOnCompletionListener(this);

mediaPlayer.setOnErrorListener(this);

you can add a boolean variable to check isPlaying;

boolean isPlaying= false; //false by default

and when you start mediaPlayer at the very moment set isPlaying=true and you are good to go.



来源:https://stackoverflow.com/questions/10160089/check-if-music-playing-in-android-media-player-api

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!