MediaPlayer.reset()与release()相同,与资源管理相同

时间:2014-06-28 10:29:05

标签: android android-mediaplayer

情景:

假设媒体播放器正在播放曲目,用户点击其他曲目即可播放。

以下哪种方法在资源管理方面更好:

1。释放

mMediaPlayer.stop();
if (mMediaPlayer != null) {
    mMediaPlayer.release();
    mMediaPlayer = null;
}
mMediaPlayer = new MediaPlayer();
mMediaPlayer.setAudioSessionId(AudioManager.STREAM_MUSIC);
mMediaPlayer.setOnPreparedListener(mOnPreparedListener);
mMediaPlayer.setOnErrorListener(mOnErrorListener);
mMediaPlayer.setOnCompletionListener(mOnCompletionListener);

2。重置

mMediaPlayer.reset();

我想知道这两种方法是相同还是一种方法比其他方法更好?

1 个答案:

答案 0 :(得分:2)

Reset MediaPlayer 是更好的选择

mMediaPlayer.reset();

如果您在发布后Release MediaPlayer ,则必须再次创建MediaPlayer's对象。

ResetRelease之后,您必须按照以下步骤操作。

  1. 初始化
  2. 准备
  3. 开始 enter image description here
  4. 额外的事情是你多次创建MediaPlayer's Object

    所以,更好的选择是Reset the MediaPlayer 因为您正在创建Object of MediaPlayer single time