可以暂停和停止播放,以及当前播放位置 可以调整。可以通过pause()暂停播放。什么时候打电话给 pause()返回,MediaPlayer对象进入Paused状态。注意 从Started状态到Paused状态的转换 反之亦然在播放器引擎中异步发生。可能需要 在调用isPlaying()之前更新状态的时间 在流内容的情况下,可以是几秒钟。从: MediaPlayer.html#isPlaying
答案 0 :(得分:0)
您看到的所有方法都是唯一可用的方法。对于其他事情,您可以使用:
try {
//command
} finally {
//only called once the calls in the try clause are completed
}
答案 1 :(得分:0)
到目前为止,MediaPlayer API中没有可用的方法来获取除了播放之外的当前状态。
如果当前正在播放,则MediaPlayer.isPlaying()方法返回true,否则返回false,如果以无效状态调用,则可能抛出IllegalStateException。
if(mPlayer.isPlaying()){
// MediaPlayer is in play state
}
else{
// MediaPlayer is not in play state
}
我建议您保留一个枚举标志来标识每个州,例如
public enum PlayerStates{PAUSED,STOPPED,PLAYING};
PlayerStates state;
...
public void pause(){
mPlayer.pause();
state=PlayerStates.PAUSED;
}
public void play(){
mPlayer.start();
state=PlayerStates.PLAYING;
}
public void stop(){
mPlayer.stop();
state=PlayerStates.STOPPED;
}
// returns the current state of MediaPlayer
public PlayerStates getState(){
return state;
}
我希望这对你有所帮助。