检查音乐是否在Android媒体播放器API中播放

Zah*_*bib 11 android media-player

我正在使用下面的代码在android中播放音频文件

MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource("fileSourceHere");
mediaPlayer.prepare();
mediaPlayer.start();
Run Code Online (Sandbox Code Playgroud)

我有一个关于该程序的按钮.单击该按钮时,它将检查是否播放音乐.如果播放音乐,它就会停止播放.如何检查音乐是否播放?我尝试了下面的代码,但它没有用

if(mediaPlayer.isPlaying() == true){
 mediaPlayer.pause();
}else{
 mediaPlayer.start();
}
Run Code Online (Sandbox Code Playgroud)

dak*_*t21 7

试试这个:

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();
}
Run Code Online (Sandbox Code Playgroud)


Xar*_*mer 7

检查音乐是否由任何其他应用播放.使用

AudioManager.isMusicActive();
Run Code Online (Sandbox Code Playgroud)

如果您想了解您的应用音乐.

添加监听器以收听

mediaPlayer.setOnPreparedListener(this);

mediaPlayer.setOnCompletionListener(this);

mediaPlayer.setOnErrorListener(this);
Run Code Online (Sandbox Code Playgroud)

你可以添加一个布尔变量来检查isPlaying;

boolean isPlaying= false; //false by default
Run Code Online (Sandbox Code Playgroud)

当你start mediaPlayer在那个时刻设定isPlaying=true并且你很高兴去.