android.media.MediaPlayerの使い方|Android開発
androidでandroid.media.MediaPlayerを使って音楽を再生する方法です。
MediaPlayerの使用方法
再生の開始
MediaPlayer.create()
でMediaPlayer
のインスタンスを生成する
第1引数はコンテキスト、第2引数は再生するファイルsetOnCompletionListener()
で再生終了時のイベントリスナを登録するstart()
で再生を開始
再生終了時
再生が終了すると、MediaPlayer.OnCompletionListener.onCompletion()
がコールされます。
release()
をコールしてMediaPlayer
を解放する- 再生終了後に行いたい処理を実行する
再生のキャンセル
再生を途中で終わらせる場合。
stop()
をコールrelease()
をコール
stop()
で再生をキャンセルすると、MediaPlayer.OnCompletionListener.onCompletion()
は呼ばれません。サンプル
今回は再生するファイルとしてapp/src/main/res/raw
にcall.ogg
を配置しました。(raw
フォルダが存在しない場合はフォルダを作成します)
public class MediaPlayerTest implements MediaPlayer.OnCompletionListener {
private Context mContext;
private MediaPlayer mMediaPlayer;
public MediaPlayerTest(Context context) {
mContext = context;
mMediaPlayer = null;
}
public void start() {
mMediaPlayer = MediaPlayer.create(mContext, R.raw.call);
mMediaPlayer.setOnCompletionListener(this);
mMediaPlayer.start();
}
public void stop() {
if (mMediaPlayer == null) {
return;
}
if (mMediaPlayer.isPlaying()) {
mMediaPlayer.stop();
}
mMediaPlayer.release();
mMediaPlayer = null;
}
@Override
public void onCompletion(MediaPlayer mp) {
if (mMediaPlayer == null) {
return;
}
mMediaPlayer.release();
mMediaPlayer = null;
}
}