前言:
本篇文章是个人学习日记,纯粹学习交流,如有错误或不到位的地方,请见谅。
之前我写了一个音乐播放器,回头看发现代码实在凌乱不堪,冗余.....
我决定重新编写一次简单,清晰的版本
以下说说怎么在Service使用Mediaplayer,以及控制播放停止及获取状态等信息。
贴代码,然后作解释
public class MyService extends Service {
private MediaPlayer mediaPlayer;
private MusicBinder musicBinder;
private boolean isSetData; //是否设置资源
//播放模式
public static final int SINGLE_CYCLE = 1; //单曲循环
public static final int ALL_CYCLE = 2; //全部循环
public static final int RANDOM_PLAY = 3; //随机播放
private int MODE;
@Override
public void onCreate() {
super.onCreate();
//初始化数据
isSetData = false;
MODE = ALL_CYCLE;
mediaPlayer = new MediaPlayer();
musicBinder = new MusicBinder();
}
private void playMusic(String path) {
try {
//设置资源
mediaPlayer.reset();
mediaPlayer.setDataSource(path);
isSetData = true;
//异步缓冲准备及监听
mediaPlayer.prepareAsync();
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedLi