allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.Chen-Xi-g:AudioPlay:v1.1.0'
}
/**
* 在需要使用的类中进行初始化
*/
MediaPlayerUtils mMediaPlayerUtils = new MediaPlayerUtils();
/**
* 设置播放类型。
*/
//播放sd卡资源
MediaPlayerUtils.setFilePlay(File file);
//播放raw下文件
MediaPlayerUtils.setRawPlay(Context context,int rawId);
//播放assets下文件
MediaPlayerUtils.setAssetsName(Context context,String assetsName);
//播放网络资源
MediaPlayerUtils.setNetPath(String netPath);
//开始播放
MediaPlayerUtils.start();
//停止播放
MediaPlayerUtils.stop();
//暂停播放
MediaPlayerUtils.pause();
//继续播放
MediaPlayerUtils.resume();
//或
MediaPlayerUtils.getMediaPlayer().start();
//是否正在运行
MediaPlayerUtils.isRunning();
//是否在播放中
MediaPlayerUtils.isPlaying();
//播放文件的时长
MediaPlayerUtils.getDuration();
//获取当前播放位置
MediaPlayerUtils.getCurrentPosition();
//左右声道大小 0-1
MediaPlayerUtils.setVolume(float leftVolume, float rightVolume);
//设置唤醒方式 需要在清单文件AndroidManifest.xml中添加权限
//<uses-permission android:name="android.permission.WAKE_LOCK" />
MediaPlayerUtils.setWakeMode(Context context, int mode);
//播放时不熄屏
MediaPlayerUtils.setScreenOnWhilePlaying(boolean screenOn);
//指定播放位置 毫秒
MediaPlayerUtils.seekTo(int msec);
//是否循环播放
MediaPlayerUtils.setLooping(boolean looping);
//获取当前播放资源类型
MediaPlayerUtils.getMusicType();
//多久获取一次进度 毫秒
MediaPlayerUtils.setSleep(int sleep);
//获取MediaPlayer对象
MediaPlayerUtils.getMediaPlayer();
/**
* MediaPlayer状态回调
*/
MediaPlayerUtils.setMediaPlayFunctionListener();
public interface MediaPlayFunctionListener {
// 准备完成
void prepared();
// 开始播放
void start();
// 暂停
void pause();
// 停止播放
void stop();
//重置
void reset();
}
/**
* 获取当前信息的回调
*/
MediaPlayerUtils.setMediaPlayInfoListener();
public interface MediaPlayInfoListener {
//播放错误监听
void onError(MediaPlayer mp, int what, int extra);
//播放完成监听
void onCompletion(MediaPlayer mediaPlayer);
//网络缓冲监听
void onBufferingUpdate(MediaPlayer mediaPlayer, int i);
//进度调整监听
void onSeekComplete(MediaPlayer mediaPlayer);
//时实播放进度
void onSeekBarProgress(int progress);
}
如果你感觉对你有用的话请点一下Star吧,而且你还可以打赏一波(If you feel useful to you, please click Star, or you can reward it.)
QQ: 1217056667
邮箱(Email): a912816369@gmail.com
小站: www.minlukj.com