Android 2.2 中断MediaPlayer 声音播放?

标签 android media-player android-2.2-froyo

经过一些谷歌搜索后,这似乎是一个常见问题,但我还没有找到实际的解决方案。我还没有在实际设备上测试过,但模拟器在完成大约 80% 时切断了我的声音 fragment 。我正在播放 .wav 文件。

有人知道这些问题的程序化解决方案吗?

编辑:

    public void play(Context context){
    if (soundPlayer != null){
        soundPlayer.release();
    }

    int rId = 0;

    switch(aIndex){
        case 0: rId = R.raw.c0; break;
        case 1: rId = R.raw.c1; break;
        case 2: rId = R.raw.c2; break;
        case 3: rId = R.raw.c3; break;
        case 4: rId = R.raw.c4; break;
        case 5: rId = R.raw.c5; break;
        case 6: rId = R.raw.c6; break;
        case 7: rId = R.raw.c7; break;
        case 8: rId = R.raw.c8; break;
        case 9: rId = R.raw.c9; break;
        case 10: rId = R.raw.c10; break;
        case 11: rId = R.raw.c11; break;
        case 12: rId = R.raw.c12; break;
        case 13: rId = R.raw.c13; break;
        case 14: rId = R.raw.v14; break;
        case 15: rId = R.raw.v15; break;
        case 16: rId = R.raw.v16; break;
        case 17: rId = R.raw.v17; break;
        case 18: rId = R.raw.v18; break;
        case 19: rId = R.raw.v19; break;
        case 20: rId = R.raw.v20; break;
        case 21: rId = R.raw.v21; break;
        case 22: rId = R.raw.v22; break;
        case 23: rId = R.raw.v23; break;

        default: rId = R.raw.error; break;
    }

    soundPlayer = MediaPlayer.create(context, rId);
    if (soundPlayer != null){
        soundPlayer.start();
    }
}

最佳答案

遇到同样的问题才发现这个问题。在我的例子中,简单的答案是使 MediaPlayer 成为一个类变量。如果你将它放在你的方法本地,垃圾收集器显然会清除它并终止声音播放。

关于Android 2.2 中断MediaPlayer 声音播放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7098031/

相关文章:

java - 所有 com.android.support 库必须使用完全相同的版本规范。在android studio 2.3中找到版本27.0.2、25.1.0、25.0.0

android - 为什么 Volley 在我的应用程序上使用这么多线程?

java - MediaPlayer 暂停和播放错误

安卓 : AudioHardware pcm playback is going to standby

android - 如何在所有 sdk 版本的 android 中测试我的 android 应用程序?

java - Android/Java 解析匿名 JSONArray 对象

linux - 如何在不安装mp3编解码器的情况下播放音乐

android - 我的代码足以防止 MediaPlayer 泄漏吗?

android - LogCat 不知所措,我不知道该怎么办...应用程序打开时关闭?

Android 系统颜色常数