我正在开发一个为孩子们讲述故事的 Android 应用程序,我使用的是 PagerAdapter,所以一旦用户在页面之间导航,就会播放音频,每个页面的持续时间约为 30 秒所以,我想使用 SoundPool 但是我遇到了两个问题:
1-曾经是当用户选择特定页面时声音没有下载,因此不会播放声音,但我通过考虑添加大小小于 1 Mega 的声音来解决这个问题(PS 从一开始我就使用 .ogg Raw 文件夹中的文件)
2-我添加的声音在选择页面时正常播放,但没有完成到最后
之后我使用了 MediaPlayer 但这里的问题是当用户选择另一个页面时它会崩溃
@Override
public void onPageSelected(int position) {
selectedpage=pager.getCurrentItem();
switch (selectedpage)
{case 0 :
Log.i("pageSelected",""+selectedpage);
break;
case 1 :
if (soundplayer1.isPlaying())
{
soundplayer1.stop();
soundplayer1.release();
}
else
soundplayer2.start();
soundplayer2.start();
Log.i("pageSelected",""+selectedpage);
break;
case 2 :
if (soundplayer2.isPlaying())
{
soundplayer2.stop();
soundplayer2.release();
Log.i("pageSelected","IsPlaying");
}
else
soundplayer1.start();
soundplayer1.start();
Log.i("pageSelected","Start");
break;
}
}
先感谢您,