Самое странное. Когда воспроизводится анимация, я слышу свой звуковой эффект, но когда анимация не воспроизводится, звуковой эффект прерывается. Вот код:
private void Feedback(boolean success)
{
Log.d(TAG, "Feedback");
if(success)
{
PlayCreatureSound();
ShowAnimatedCreature();
}
else
{
PlayFailedSound();
}
}
private void PlayCreatureSound()
{
Log.d(TAG, "PlayCreatureSound");
AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
float curVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
float maxVolume = audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
float leftVolume = curVolume/maxVolume;
float rightVolume = curVolume/maxVolume;
spCreatureVoice.play(iCreatureVoicesId[lastCreature.ordinal()], leftVolume, rightVolume, 1, 0, 1);
}
private void PlayFailedSound()
{
Log.d(TAG, "PlayFailedSound");
spCreatureVoice.stop(iCreatureVoicesId[FeedbackCreature.FC_COUNT.ordinal()]);
AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
float curVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
float maxVolume = audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
float leftVolume = curVolume/maxVolume;
float rightVolume = curVolume/maxVolume;
spCreatureVoice.play(iCreatureVoicesId[FeedbackCreature.FC_COUNT.ordinal()], leftVolume, rightVolume, 1, 0, 1);
}
private void ShowAnimatedCreature()
{
Log.d(TAG, "ShowAnimatedCreature");
// show the creature
ibtnShapes[lastTargetLocation].setImageBitmap(bmCreatures[lastCreature.ordinal()]);
// animate
ibtnShapes[lastTargetLocation].startAnimation(rotate[0]);
}
Я уже пробовал:
1. переключение файлов
2. с помощью MediaPlayer
3. удаление "spCreatureVoice.stop (..."
4. изменение приоритета