У меня есть два типа воспроизведения MediaPlayer в двух разных приложениях.Одна - это отдельная переменная, которая ожидает завершения воспроизведения следующего слова / звукового эффекта.Кажется, это работает нормально.Другой представляет собой набор из 4 переменных MediaPlayer, которые воспроизводятся одновременно.Это работает в 2.3.3 и, кажется, работает на виртуальном устройстве 4.0.3, но на моем TF101 происходит сбой в обоих приложениях.
При неправильном прикосновении вызывается playse ('oops').
public void playse(String ss){
MediaPlayer tempse;
if(tse1 == null){tempse = tse1;}
else{if(tse2 == null){tempse = tse2;}
else{if(tse3 == null){tempse = tse3;}
else{if(tse4== null){tempse = tse4;}}}}
if(ss == "oops"){ tempse = MediaPlayer.create(mContext, R.raw.seoops); tempse.start();}
}
В основном цикле приложения 4 переменные обрабатываются так:
if(tse1 != null){ if(tse1.isPlaying()== false){tse1.release(); tse1= null;} }
if(tse2 != null){ if(tse2.isPlaying()== false){tse2.release(); tse2= null;} }
if(tse3 != null){ if(tse3.isPlaying()== false){tse3.release(); tse3= null;} }
if(tse4 != null){ if(tse4.isPlaying()== false){tse4.release(); tse4= null;} }