android - 媒体播放器延迟启动

标签 android android-mediaplayer media

我的媒体播放器在闲置一段时间后延迟启动,也有一段时间不播放音频。

之前我使用的是setDataSource(),但这次我使用的是create()

作为引用,这是我正在使用的代码:

AssetFileDescriptor afd = _context.getResources().openRawResourceFd(this._soundResource.get(this._toBePlayed));
        mp = new MediaPlayer();
        mp.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
        afd.close();
        mp.setOnPreparedListener(new OnPreparedListener(){

            @Override
            public void onPrepared(MediaPlayer mp) {

                mp.start();
            }
        });
        mp.setOnCompletionListener(new OnCompletionListener(){

            @Override
            public void onCompletion(MediaPlayer mp) {

                mp.reset();
                mp.release();
            }
        });
        mp.prepareAsync();

最佳答案

我也遇到了 start() 的延迟问题。我在 onPrepared 中使用 mp.seekTo(0) 修复了它,如下所示:

mp.setOnPreparedListener(new OnPreparedListener(){
    @Override
    public void onPrepared(MediaPlayer mp) {
        mp.seekTo(0);
        mp.start();
    }
});

关于android - 媒体播放器延迟启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4895134/

相关文章:

android - 如何获取ListView中选中行的文本,ListView的获取item和subitem

android - 构建一个将连接到包含 SQL 数据库的服务器的 Android 应用程序。我应该怎么做?

java - Android MediaPlayer错误反馈

javascript - 根据屏幕尺寸更改 Javascript 属性(HTML 中内联) - 就像 CSS 媒体查询

audio - 使用Phonegap 2.9和iOS7录制后播放音频

Android Pie:信号 11 (SIGSEGV),代码 1 (SEGV_MAPERR) android::Theme::ApplyStyle(unsigned int, bool)

java - 通过http流音频

android - 在switch语句中使用Android MediaPlayer播放声音

html - 媒体查询不适用于手机

android - 在 Android 应用程序中抽象 Realm 的正确方法