Android Media Player示例

Android Media Player示例

我们可以通过MediaPlayer类在Android中播放和控制音频文件。 MediaPlayer类 可以帮助我们实现此功能。

在这里,我们将看到一个简单的示例来播放音频文件。在下一页中,我们将看到控制音频播放的示例,例如开始、停止、暂停等。

MediaPlayer类

android.media.MediaPlayer 类用于控制音频或视频文件。

MediaPlayer类的方法

MediaPlayer类有许多方法。其中一些如下所示:

方法 描述
public void setDataSource(String path) 设置要使用的数据源(文件路径或http URL)。
public void prepare() 同步准备播放器。
public void start() 开始或恢复播放。
public void stop() 停止播放。
public void pause() 暂停播放。
public boolean isPlaying() 检查媒体播放器是否正在播放。
public void seekTo(int millis) 在指定的时间(以毫秒为单位)进行搜索。
public void setLooping(boolean looping) 设置播放器为循环或非循环。
public boolean isLooping() 检查播放器是否循环或非循环。
public void selectTrack(int index) 选择指定索引的轨道。
public int getCurrentPosition() 返回当前播放位置。
public int getDuration() 返回文件的持续时间。
public void setVolume(float leftVolume,float rightVolume) 设置此播放器的音量。

Activity类

让我们编写代码来播放音频文件。在这里,我们将播放位于sdcard/Music目录下的maine.mp3文件。

“`java
package com.example.audiomediaplayer1;

import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.MediaController;
import android.widget.VideoView;

public class MainActivity extends Activity {

<pre><code>@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

MediaPlayer mp=new MediaPlayer();
try{
mp.setDataSource("/sdcard/Music/maine.mp3");//Write your location here
mp.prepare();
mp.start();

}catch(Exception e){e.printStackTrace();}

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
</code></pre>

}

<pre><code class="line-numbers">#### 您需要在真实设备上运行它以测试应用程序。

#### Android MediaPlayer控制音频的示例

让我们看一个简单的示例来开始、停止和暂停音频播放。

#### activity_main.xml

从工具箱中拖动三个按钮来启动、停止和暂停音频播放。现在,xml文件将如下所示:
“`java
<RelativeLayout xmlns:androclass=”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” >

<TextView
android:id=”@+id/textView1″
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_alignParentTop=”true”
android:layout_marginTop=”30dp”
android:text=”Audio Controller” />

<Button
android:id=”@+id/button1″
style=”?android:attr/buttonStyleSmall”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_alignLeft=”@+id/textView1″
android:layout_below=”@+id/textView1″
android:layout_marginTop=”48dp”
android:text=”start” />

<Button
android:id=”@+id/button2″
style=”?android:attr/buttonStyleSmall”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_alignTop=”@+id/button1″
android:layout_toRightOf=”@+id/button1″
android:text=”pause” />

<Button
android:id=”@+id/button3″
style=”?android:attr/buttonStyleSmall”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_alignTop=”@+id/button2″
android:layout_toRightOf=”@+id/button2″
android:text=”stop” />

</RelativeLayout>

Activity类

让我们编写代码来启动、暂停和停止音频播放器。

“`java
package com.example.audioplay;

import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.Environment;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {
Button start,pause,stop;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

<pre><code> start=(Button)findViewById(R.id.button1);
pause=(Button)findViewById(R.id.button2);
stop=(Button)findViewById(R.id.button3);
//creating media player
final MediaPlayer mp=new MediaPlayer();
try{
//you can change the path, here path is external directory(e.g. sdcard) /Music/maine.mp3
mp.setDataSource(Environment.getExternalStorageDirectory().getPath()+"/Music/maine.mp3");

mp.prepare();
}catch(Exception e){e.printStackTrace();}

start.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mp.start();
}
});
pause.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mp.pause();
}
});
stop.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mp.stop();
}
});
}
</code></pre>

}
“““

下载这个Android示例

输出:

Android Media Player示例

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程