/**
* 1. 从网络播放音乐
*/
public void playMusic() {
// 避免音乐二重唱
if (mediaPlayer != null) {
mediaPlayer.stop();
mediaPlayer.release();// 释放音乐
mediaPlayer = null;
}
// 创建音乐对象
mediaPlayer = new MediaPlayer();
//设置音乐的类型
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
//设置要播放音乐的路径
mediaPlayer.setDataSource("http://192.168.25.76:8080/player/zxmzf.mp3");
//准备
// mediaPlayer.prepare();
mediaPlayer.prepareAsync();//异步准备
//设置准备完成的监听
mediaPlayer.setOnPreparedListener(new OnPreparedListener() {
//当音乐准备完成后调用
@Override
public void onPrepared(MediaPlayer mp) {
//播放
mediaPlayer.start();
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 2. 从SD卡播放音乐
*/
public void playMusic() {
// 避免音乐二重唱
if (mediaPlayer != null) {
mediaPlayer.stop();
mediaPlayer.release();// 释放音乐
mediaPlayer = null;
}
// 创建音乐对象
mediaPlayer = new MediaPlayer();
//设置音乐的类型
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
//设置要播放音乐的路径
mediaPlayer.setDataSource("/mnt/sdcard/apple.mp3");
//准备
mediaPlayer.prepare();
//播放
mediaPlayer.start();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 3. 从raw里面播放
*/
public void playMusic(){
//避免音乐二重唱
if (mediaPlayer != null) {
mediaPlayer.stop(); mediaPlayer.release();//释放音乐
mediaPlayer = null;
}
//创建音乐对象
mediaPlayer = MediaPlayer.create(this, R.raw.ib);
//开启播放
mediaPlayer.start();
}
添加权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />