1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Android-音频播放器—MediaPlayer

Android-音频播放器—MediaPlayer

时间:2019-11-14 18:21:11

相关推荐

Android-音频播放器—MediaPlayer

音频播放器—MediaPlayer

1.日常生活中听到的数码声音即音频,主要格式有(MP3,3GPP,Ogg和,WAWE)等,通常看到的视频主要有(3GP 和mpeg-4)

2.再Android中提供了一个MediaPlayer类,使用该类可以轻松播放音乐,只需要指定播放的音频调用相应的方法即可,以下列出常用方法

1.MediaPlayer支持三种不同的媒体来源:

① 本地资源

② 内部的URI,比如你可以通过ContentResolver来获取

③ 外部URL(流) 对于Android所支持的的媒体格式列表

2.常用方法

create():创建一个要播放的多媒体setDataSource():设置数据来源prepare():准备播放start():开始播放stop():停止播放pause():暂停播放reset():恢复MediaPlayer到未初始化状态

3.其他方法

getCurrentPosition():得到当前的播放位置getDuration():得到文件的时间getVideoHeight():得到视频高度getVideoWidth():得到视频宽度isLooping():是否循环播放isPlaying():是否正在播放prepare():准备(同步)prepareAsync():准备(异步)release():释放MediaPlayer对象reset():重置MediaPlayer对象seekTo(int msec):指定播放的位置(以毫秒为单位的时间)setAudioStreamType(int streamtype):指定流媒体的类型setDisplay(SurfaceHolder sh):设置用SurfaceHolder来显示多媒体setLooping(boolean looping):设置是否循环播放

4.实现音频播放的步骤

① 添加音频资源(存放在res目下的raw包下-手动创建)

② 创建MediaPlayer对象(两种方式)

使用MediaPlayer类提供的静态方法create来创建MediaPlayer对象,语法格式如下

MediaPlayer mediaplayer = MediaPlayer.create(this,R.raw.hls)

参数说明:

参数1:设备上下文,直接用this指定

参数2:需要播放音频的资源文件通过无参构造方法创建MediaPlayer对象(用着这种方法时,需单独指定装载的资源文件,这里MediaPlayer提供了一个setDateSource方法,此方法用于指定文件位置,真正装载文件还需要调用prepare方法)例如下边代码

MediaPlayer player = new MediaPlayer();try {player.setDataSource("/music/attition.mp3"); //设置播放文件具体路径player.prepare();//装载播放文件} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}

③开始播放音频,利用MediaPlayer提供的start()方法,

④ 播放途中暂停,利用MediaPlayer提供的pause()方法,

⑤ 停止播放音频,利用MediaPlayer提供的stop()方法,

实例-创建简易播放器

xml文件-三个按钮

<LinearLayout xmlns:android="/apk/res/android"xmlns:tools="/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="${relativePackage}.${activityClass}"android:orientation="vertical"android:gravity="center"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="音频播放"/><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:orientation="horizontal"><Buttonandroid:id="@+id/btn_start"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:text="开始播放"/><Buttonandroid:id="@+id/btn_pause"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:text="暂停播放" /><Buttonandroid:id="@+id/btn_stop"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:text="停止播放"/></LinearLayout></LinearLayout>

效果:::

java文件

public class MadioActivity extends Activity {MediaPlayer mediaplayer;private Button btn_start,btn_pause,btn_stop;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_madio);//引入音频文件mediaplayer = MediaPlayer.create(this,R.raw.m1);btn_start=(Button) findViewById(R.id.btn_start);btn_pause=(Button) findViewById(R.id.btn_pause);btn_stop=(Button) findViewById(R.id.btn_stop);btn_start.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubmediaplayer.start(); //开始播放音频}});btn_pause.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubmediaplayer.pause(); //暂停播放音频}});btn_stop.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubmediaplayer.stop();//停止播放音频}});}}

注意:停止之后,不能再次播放了

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。