0910Android基础MediaPlayer

MediaPlayer

MediaPlayer状态图解

这里写图片描述
  首先需要创建出一个Media对象,然后调用setDataSource()方法来设置音频文件的路径,在调用prepare()方法使MediaPlayer进入到准备状态,接下来调用start()方法就可以开始播放视频。

MediaPlayer常用方法

方法  说明
MediaPlayer     构造方法
create  创建一个要播放的多媒体
getCurrentPosition  得到当前播放位置
getDuration     得到文件的时间
getVideoHeight  得到视频的高度
getVideoWidth   得到视频的宽度
isLooping   是否循环播放
isPlaying   是否正在播放
pause   暂停
prepare     准备(同步)
prepareAsync    准备(异步)
release     释放MediaPlayer对象
reset   重置MediaPlayer对象
seekTo  指定播放的位置(以毫秒为单位的时间)
setAudioStreamType  设置流媒体的类型
setDataSource   设置多媒体数据来源
setDisplay  设置用SurfaceHolder来显示多媒体
setLooping  设置是否循环播放
setOnButteringUpdateListener    网络流媒体的缓冲监听
setOnErrorListener  设置错误信息监听
setOnVideoSizeChangedListener   视频尺寸监听
setScreenOnWhilePlaying     设置是否使用SurfaceHolder来保持屏幕显示
setVolume   设置音量
start   开始播放
stop    停止播放 

MediaPlayer的Demo

//                创建音乐播放器对象。
                MediaPlayer player=new MediaPlayer();
//                Resets the MediaPlayer to its uninitialized state.
                player.reset();
                Log.d("播放音乐的路径", "╮(╯▽╰)╭ "+Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC).getAbsolutePath());
//                获得内部sdcard音乐文件夹
                File musicFile= Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC);
//               获得文件夹下的所有文件。
                File[] files=musicFile.listFiles();
//                打印所有的歌曲路径
                for(File file:files){
                    Log.d("显示所有歌曲路径", "→"+file.getAbsolutePath());
                }
                try {
//                    Sets the data source (file-path or http/rtsp URL) to use.
                    player.setDataSource(files[0].getAbsolutePath());
                    player.prepare();
                    player.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                        @Override
                        public void onPrepared(MediaPlayer mp) {
                            mp.start();
                        }
                    });
                } catch (IOException e) {
                    e.printStackTrace();
                }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值