boolean playedAtLeastOnce;
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
playedAtLeastOnce = true;
}
public boolean isPaused() {
if (!mMediaPlayer.isPlaying && playedAtLeastOnce)
return true;
else
return false;
// or you can do it like this
// return !mMediaPlayer.isPlaying && playedAtLeastOnce;
}
private boolean pause=true; //A Boolean variable to check your state declare it true or false here depends upon your requirement
现在,您可以在这里创建一个方法,以检查何时要检查播放器是否暂停
public void checkplayer(MediaPlayer player){
if(isPause=true) //check your declared state if you set false or true here
Player.pause();
else if(isPause=false){
Player.play();
or
Player.stop();
}
5条答案
按热度按时间deyfvvtc1#
一种方法是检查媒体播放器是否未播放(暂停),并检查其是否位于除起始位置(1)以外的位置。
apeeds0o2#
没有API来检查
MediaPlayer
是否暂停。因此,请使用任何布尔变量来检查和切换它时,您暂停使用任何button
。56lgkhnf3#
定义一个名为
playedAtLeastOnce
的boolean
变量(或者任何你想要的),然后如果你的MediaPlayer
对象至少被播放过一次,就把它设置为true
。把它赋值为true的好地方是在MediaPlayer.OnPreparedListener
实现接口的onPrepared(MediaPlayer mp)
方法中。然后,如果
MediaPlayer
没有播放,并且playedAtLeastOnce
是true
,则可以说MedaiPlayer
已暂停。fkaflof64#
您可以创建全局变量
在
setDataSource()
之后,在侦听器setOnPreparedListener()
中覆盖
MediaPlayer.reset()
函数,在其中notIdle
在start()
、pause()
和stop()
状态下将为true
...您可以在认为更方便时更改此行为。h9a6wy2h5#
Ankit回答说,没有API可以检查媒体播放器是否暂停,我们必须像这样通过编程来检查它
现在,您可以在这里创建一个方法,以检查何时要检查播放器是否暂停