📜  Android-MediaPlayer(1)

📅  最后修改于: 2023-12-03 15:13:21.916000             🧑  作者: Mango

Android-MediaPlayer

  • Android-MediaPlayer 是一款基于 Android 平台的媒体播放器,可以播放本地和网络上的音频和视频文件。
功能特点
  • 支持多种音频和视频格式,包括:mp3、wav、aac、amr、mp4、3gp、avi、flv 等。
  • 支持播放本地文件,也支持播放网络上的文件。
  • 支持在线流媒体播放,包括:HTTP、HLS、RTMP 等。
  • 支持循环播放、单曲循环、随机播放等播放模式。
  • 支持播放进度、总时长、缓冲进度等状态显示。
  • 支持音频和视频播放的多种控制,包括:播放、暂停、停止、快进、快退、调节音量等。
  • 支持媒体信息获取,包括:歌曲名、歌手名、专辑名、封面图片等信息。
  • 支持播放出错时的错误处理,并提供错误信息。
使用方法
  1. 添加依赖项:
dependencies {
    implementation 'com.google.android.exoplayer:exoplayer:$latestVersion'
}
  1. 创建 MediaPlayer 对象:
MediaPlayer mediaPlayer = new MediaPlayer();
  1. 设置数据源:
mediaPlayer.setDataSource(dataSourceString);
  1. 预处理:
mediaPlayer.prepareAsync();
  1. 监听状态变化:
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
    @Override
    public void onPrepared(MediaPlayer mp) {
        // 准备完成
    }
});
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
    @Override
    public void onCompletion(MediaPlayer mp) {
        // 播放完成
    }
});
mediaPlayer.setOnErrorListener(new MediaPlayer.OnErrorListener() {
    @Override
    public boolean onError(MediaPlayer mp, int what, int extra) {
        // 播放出错
        return false;
    }
});
  1. 控制播放:
mediaPlayer.start(); // 播放
mediaPlayer.pause(); // 暂停
mediaPlayer.seekTo(msec); // 跳转到指定位置
注意事项
  • 使用 MediaPlayer 前,请确保已经获取了媒体文件的读取权限。
  • 使用 MediaPlayer 时,请确保当前的 Activity 或 Service 已经启动,否则会出现无法播放的问题。
  • 在使用在线流媒体播放时,请确保网络连接正常,否则会出现播放中断的问题。
  • 在使用 MediaPlayer 播放音频时,请确保通知栏和电话等的声音不会干扰到音频播放,否则会出现音乐中断的问题。