以编程方式在给定时间暂停/停止MediaPlayer Android [英] Pause/Stop MediaPlayer Android at given time programmatically

查看:79
本文介绍了以编程方式在给定时间暂停/停止MediaPlayer Android的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我做了一些研究,但找不到解决此问题的任何方法: 我想播放MediaPlayer并在给定的时间暂停/停止它.(即:从6秒播放到17秒).

I researched a little bit, but couldn't find any solutions to this problem: I would like to play a MediaPlayer and pause/stop it at a given time.. (ie: play from second 6 to second 17).

我知道可以使用seekTo()方法设置其起点,但是我可以通过设置终点(当然,在达到文件终点限制之前)来暂停/停止播放吗?

I know that I can set its starting point with seekTo() method, but can I pause/stop it from playing by setting an end point (of course, before reaching the file end limit)?

推荐答案

您可以通过多种方法来完成此操作,这是一种方法:

There are different ways you could do this, here's one:

int startFrom = 6000;
int endAt = 11000;

MediaPlayer mp;

Runnable stopPlayerTask = new Runnable(){
    @Override
    public void run() {
        mp.pause();
    }};

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    mp = MediaPlayer.create(this, R.raw.my_sound_file);  
    mp.seekTo(startFrom);
    mp.start();

    Handler handler = new Handler();
    handler.postDelayed(stopPlayerTask, endAt);
}

媒体播放器将开始播放6秒钟,并在播放11秒后暂停播放(第二秒17秒).

The mediaplayer will start playing 6 seconds in and pause it 11 seconds after that (at second 17).

这篇关于以编程方式在给定时间暂停/停止MediaPlayer Android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆