android 音乐播放器功能快速实现

我现在做一个项目要播放网络音频,大神们推荐一个音乐播放的库或者相关项目,能实现播放网络音乐就行了,保证服务不崩溃可以一直运行。之前网上找的都不合适,谢谢大家了帮忙提个建议吧!

安卓的音乐播放器简单实现 i
1 播放
2 暂停
3 重播
4 停止
1.开始播放 业务逻辑 1 直接播放,当按钮按下时 将播放按钮设置为不可用状态
2 当音乐播放完毕是将音乐按钮重新设置为可以播放的状态
[java] view plain copy
public void play(View view) {

String filepath = et_path.getText().toString();

File file = new File(filepath);

if (file.exists()) {

        try {  
            mPlayer = new MediaPlayer();  
            mPlayer.setDataSource(filepath);  
            mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);  
            mPlayer.prepare();  
            mPlayer.start();  

        } catch (Exception e) {  

            Toast.makeText(MainActivity.this, "播放失败", 0).show();  
            e.printStackTrace();  
        }  
        play.setEnabled(false);  
        mPlayer.setOnCompletionListener(new OnCompletionListener() {  

            @Override  
            public void onCompletion(MediaPlayer mp) {  
                play.setEnabled(true);  

            }  
        });  

    } else {  
        // 播放的文件不存在  
        Toast.makeText(MainActivity.this, "播放的文件不存在", 0).show();  
    }  

}  

2 暂停播放时需要注意 1 首先按下暂停按钮式 音乐停止播放
2 此时mpayer!=null但是音乐也没有播放 故if (mPlayer !=null && mPlayer.isPlaying())条件不成立 所以用了如下代码if("继续".equals(pause.getText().toString())) { mPlayer.start();pause.setText("暂停"); return; }
[java] view plain copy
public void pause(View view) {

if ("继续".equals(pause.getText().toString())) {

mPlayer.start();

pause.setText("暂停");

return;

}

    if (mPlayer != null && mPlayer.isPlaying()) {  
        mPlayer.pause();  
        pause.setText("继续");  
    }  

}  

3 重播功能 1 当按下按钮时 音乐重新开始播放 但是 当按过暂停按钮时 if (mPlayer != null &&

  • mPlayer.isPlaying()) 条件就不在成立 故else { play(view); } 同时将暂停按钮恢复至初始状态 [java] view plain copy public void replay(View view) {
    if (mPlayer != null && mPlayer.isPlaying()) {
    mPlayer.seekTo(0);
    } else {
    play(view);
    }
    pause.setText("暂停");
    }

4停止功能 满足 1 按下按钮音乐停止 将一切状态置为初始化状态
[java] view plain copy
public void stop(View view) {

if (mPlayer != null && mPlayer.isPlaying()) {

mPlayer.stop();

mPlayer.release();

mPlayer = null;

}

play.setEnabled(true);

pause.setText("暂停");

}

可以直接用前端vedio就可以实现这个功能了吧

现在现成的多的是你要的话可以发你个!

1.暂停,播放

2.拖动条实现,快进,快退

3.歌词同步

4.下一曲,上一曲。

5.专辑图片显示

6.后台播放,通知栏显示

7.来电话,暂停,电话结束,开始播放。

public void start() {

try {

mediaPlayer.start();//开始播放

//设置进度条长度

seekBar.setMax(mediaPlayer.getDuration());
//发送一个Runnable, handler收到之后就会执行run()方法

handler.post(new Runnable() {

public void run() {

// 更新进度条状态

if (!isStartTrackingTouch)
//获取当前播放音乐的位置
seekBar.setProgress(mediaPlayer.getCurrentPosition());

// 1秒之后再次发送

handler.postDelayed(this, 1000);

}

});
//setOnCompletionListener 当当前多媒体对象播放完成时发生的事件

mediaPlayer.setOnCompletionListener(new OnCompletionListener() {

public void onCompletion(MediaPlayer arg0) {

next();//如果当前歌曲播放完毕,自动播放下一首.

}

});

} catch (Exception e) {

Log.v("MusicService", e.getMessage());

}

}

MediaPlayer就可以实现的