一、MediaPlayer对象常用方法介绍:

MediaPlayer mediaPlayer = new MediaPlayer();
if (mediaPlayer.isPlaying()) {
   mediaPlayer.reset();//重置为初始状态
}
mediaPlayer.setDataSource("/mnt/sdcard/god.mp3");
mediaPlayer.prepare();//缓冲                
mediaPlayer.start();//开始或恢复播放
mediaPlayer.pause();//暂停播放
mediaPlayer.start();//恢复播放
mediaPlayer.stop();//停止播放
mediaPlayer.release();//释放资源
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {//播出完毕事件
        @Override public void onCompletion(MediaPlayer arg0) {
        mediaPlayer.release();
        }
});
mediaPlayer.setOnErrorListener(new MediaPlayer.OnErrorListener() {// 错误处理事件
         @Override public boolean onError(MediaPlayer player, int arg1, int arg2) {
    mediaPlayer.release();
    return false;
         }
});

二、音乐播放器实现:

1、加入权限:

 <!-- 多媒体播放音乐 -->
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
    <!-- 监听电话状态 -->
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>

2、界面布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <Button
        android:id="@+id/btnPlay"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/editPlayFile"
        android:layout_marginTop="22dp"
        android:text="@string/play" 
        android:onClick="mediaPlayer"/>

    <Button
        android:id="@+id/btnPause"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/btnReplay"
        android:layout_alignBottom="@+id/btnReplay"
        android:layout_toRightOf="@+id/btnReplay"
        android:text="@string/pause" 
        android:onClick="mediaPlayer"/>

    <Button
        android:id="@+id/btnReplay"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/btnStop"
        android:layout_alignBottom="@+id/btnStop"
        android:layout_toRightOf="@+id/btnStop"
        android:text="@string/replay" 
        android:onClick="mediaPlayer"/>

    <Button
        android:id="@+id/btnStop"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/btnPlay"
        android:layout_alignBottom="@+id/btnPlay"
        android:layout_toRightOf="@+id/btnPlay"
        android:text="@string/stop" 
        android:onClick="mediaPlayer"/>

    <EditText
        android:id="@+id/editPlayFile"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/btnPlay"
        android:layout_alignParentTop="true"
        android:layout_alignRight="@+id/btnPause"
        android:layout_marginTop="44dp"
        android:text="11.mp3"
        android:ems="10" >

        <requestFocus />
    </EditText>

</RelativeLayout>
View Code

相关文章: