Android入门笔记之音乐播放器
<1>简介
尝试下android的音乐播放器。
<2>关键步骤
使用android.media.MediaPlayer来进行音乐播放。
<3>出现的问题
无
<4>代码及解释
usicActivity.java:
package com.func;
import android.app.Activity;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
import com.test.R;
public class MusicActivity extends Activity {
/**
* @ProjectName: [androidtest]
* @Package: [com.func.MusicActivity.java]
* @ClassName: [MusicActivity]
* @Description:
* @Author: [gmj]
* @CreateDate: [2013-9-10 下午7:36:23]
* @Version: [v1.0]
*/
private TextView text = null;
private Button Start = null;
private Button Pause = null;
private Button Stop = null;
private MediaPlayer mediaPlayer = null;
private boolean isPlaying = false;
private boolean isPaused = false;
private boolean isReleased = false;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_music);
// 构建MediaPlayer对象
mediaPlayer = new MediaPlayer();
text = (TextView)findViewById(R.id.musicview);
Start = (Button) findViewById(R.id.musicstart);
Start.setOnClickListener(new StartListener());
Pause = (Button) findViewById(R.id.musicpause);
Pause.setOnClickListener(new PauseListener());
Stop = (Button) findViewById(R.id.musicstop);
Stop.setOnClickListener(new StopListener());
}
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// 开始播放
private class StartListener implements OnClickListener
{
public void onClick(View v)
{
if(!isPlaying){
mediaPlayer = MediaPlayer.create(MusicActivity.this, R.raw.k);
mediaPlayer.setLooping(true);
mediaPlayer.start();
text.setText("音乐正在播放中......");
isPlaying = true;
isReleased = false;
isPaused = false;
mediaPlayer.setOnCompletionListener(new OnCompletionListener() {
public void onCompletion(MediaPlayer mp)
{
mediaPlayer.release();
}
});
}
}
}
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// 暂停
private class PauseListener implements OnClickListener
{
public void onClick(View v)
{
if(mediaPlayer != null){
if(!isReleased){
if(!isPaused){
mediaPlayer.pause();
isPaused = true;
isPlaying = true;
text.setText("播放暂停中......");
}
else
{
mediaPlayer.start();
isPaused = false;
isPlaying = true;
text.setText("播放重新播放......");
}
}
}
}
}
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// 停止
private class StopListener implements OnClickListener
{
public void onClick(View v)
{
if(isPlaying){
if(!isReleased){
mediaPlayer.stop();
mediaPlayer.release();
isReleased = true;
}
isPlaying = false;
text.setText("播放停止......");
}
}
}
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if (keyCode == KeyEvent.KEYCODE_BACK)
{
if(!isReleased){
mediaPlayer.stop();
mediaPlayer.release();
isReleased = true;
}
this.finish();
return true;
}
return super.onKeyDown(keyCode, event);
}
}