如何在Android中开始播放之前添加延迟?

时间:2017-07-17 17:52:13

标签: java android android-mediaplayer

这可能是一个奇怪的问题,但我想在使用Android中的MediaPlayer类开始音频播放之前添加一个人工延迟(比方说,100ms)。这应该发生在AudioManager.AUDIOFOCUS_REQUEST_GRANTED之后和player.start()之前。这是我的代码:

 int result = am.requestAudioFocus(afChangeListener, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
 if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED){
               //add delay
               player.start();}

尝试用谷歌搜索,但似乎找不到任何有用的东西,而且我甚至不知道要搜索什么......我会很感激任何指针!

2 个答案:

答案 0 :(得分:0)

我不确定这是否会有所帮助但我在早些时候浏览时发现了这一点我希望这会有所帮助。 Mediaplayer and delay in playing

答案 1 :(得分:0)

使用处理程序添加延迟

int result = am.requestAudioFocus(afChangeListener, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED){
    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            player.start();
        }
    }, 100);
}