以MediaPlayer为例给出参考代码,完成播放,暂停,停止等常用功能
时间: 2024-05-09 22:18:34 浏览: 9
MediaPlayer是Android平台上常用的媒体播放器类,常用的方法包括setDataSource()、prepare()、start()、pause()、stop()等。
下面是一个简单的示例代码,演示了如何使用MediaPlayer实现播放、暂停和停止功能:
```
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private MediaPlayer mediaPlayer;
private Button btnPlay, btnPause, btnStop;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnPlay = findViewById(R.id.btn_play);
btnPause = findViewById(R.id.btn_pause);
btnStop = findViewById(R.id.btn_stop);
btnPlay.setOnClickListener(this);
btnPause.setOnClickListener(this);
btnStop.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.btn_play:
play();
break;
case R.id.btn_pause:
pause();
break;
case R.id.btn_stop:
stop();
break;
}
}
private void play() {
if (mediaPlayer == null) {
mediaPlayer = MediaPlayer.create(this, R.raw.test);//使用raw文件中的音频资源
}
mediaPlayer.start();
}
private void pause() {
if (mediaPlayer != null && mediaPlayer.isPlaying()) {
mediaPlayer.pause();
}
}
private void stop() {
if (mediaPlayer != null) {
mediaPlayer.stop();
mediaPlayer.release();
mediaPlayer = null;
}
}
@Override
protected void onDestroy() {
super.onDestroy();
if (mediaPlayer != null) {
mediaPlayer.release();
mediaPlayer = null;
}
}
}
```
在上述代码中,我们定义了一个MediaPlayer对象,用于播放音频。在play()方法中,我们使用MediaPlayer.create()方法创建MediaPlayer对象,并使用setDataSource()方法设置音频数据源,最后调用start()方法开始播放。在pause()方法中,我们使用isPlaying()方法判断MediaPlayer是否正在播放,如果正在播放,则调用pause()方法暂停播放。在stop()方法中,我们使用stop()方法停止播放,并使用release()方法释放MediaPlayer资源。注意,在释放MediaPlayer资源时,需要将MediaPlayer对象置为null。
在Activity的onDestroy()方法中,我们同样需要判断MediaPlayer对象是否存在并进行释放,以防止内存泄漏。
在布局文件中,我们添加了三个按钮,用于控制音频的播放、暂停和停止操作:
```
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<Button
android:id="@+id/btn_play"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="播放" />
<Button
android:id="@+id/btn_pause"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="暂停" />
<Button
android:id="@+id/btn_stop"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="停止" />
</LinearLayout>
```
上述代码演示了如何使用MediaPlayer实现播放、暂停和停止功能,你可以根据自己的需求进行修改和扩展。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)