//播放
MediaPlayer player = MediaPlayer.create(context, R.raw.tmp);
player.start()
//暂停(再播放当前继续)
player.pause()
//停止(再播放重头开始)
player.stop();
player.reset();
3.配置Service
MediaPlayer player = MediaPlayer.create(context, R.raw.tmp);
player.start()
//暂停(再播放当前继续)
player.pause()
//停止(再播放重头开始)
player.stop();
player.reset();
player.release();
1.MainActivity.java
public void onClick(View v) {
Intent intent = new Intent(this,MusicService.class);
switch (v.getId()) {
case R.id.btn_main_play://播放
intent.putExtra("action", "play");
startService(intent);
break;
case R.id.btn_main_stop://停止播放
intent.putExtra("action", "stop");
startService(intent);
break;
case R.id.btn_main_pause://暂停音乐
intent.putExtra("action", "pause");
startService(intent);
break;
case R.id.btn_main_exit://退出并停止音乐
//停止服务
stopService(intent);
finish();
break;
default:
break;
}
}
2.MusicService.java
package com.example.servicemusic;
import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;
/**
* 播放音乐的Service
* @author Xiaocici
*
*/
public class MusicService extends Service {
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
private MediaPlayer player;
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
String action = intent.getStringExtra("action");
if("play".equals(action)){
playMusic();
}else if("pause".equals(action)){
pauseMusic();
} else if("stop".equals(action)){
stopMusic();
}
return super.onStartCommand(intent, flags, startId);
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
//在死亡之前停止音乐
stopMusic();
}
/*
* 播放音乐
*/
private void playMusic() {
if(player==null){
player = MediaPlayer.create(this, R.raw.brave_love);//音乐名不能为汉字
}
player.start();
}
/*
* 暂停音乐
*/
private void pauseMusic() {
if(player!=null&&player.isPlaying()){
player.pause();
}
}
private void stopMusic() {
if(player!=null){
player.stop();//停止
player.reset();//重置
player.release();//释放资源
player = null;//赋空
}
}
}
3.配置Service
<service android:name="com.example.servicemusic.MusicService"></service>