پخش پشت سرهم چندین فایل صوتی
سلام دوستان
من میخوام چندتا فایل صوتی رو از sdcard پشت سرهم پخش کنم، برای اینکار اسم فایل ها رو داخل یه آرایه ذخیره میکنم و شروع به پخششون میکنم. با استفاده از متد setOnCompletionListener وقتی که فایل صوتی اول تموم شد فایل صوتی دوم رو اجرا میکنم ولی دیگه این متد setOnCompletionListener برای فایل صوتی دوم کار نمیکنه. مشکل از کجاست؟ یعنی برای هر فایل صوتی باید یه متد setOnCompletionListener جدا بنویسم؟
اینم بخشی از کد من :
public void playNewSound(boolean play) {
if (play) {
pointer++;
if (pointer < size) {
file = lastFileName + id_word_record.get(pointer) + ".amr";
try {
mediaPlayer.setDataSource(file);
mediaPlayer.prepare();
mediaPlayer.setVolume(100, 100);
mediaPlayer.start();
}
catch (IllegalArgumentException e) {
e.printStackTrace();
}
catch (IllegalStateException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
} else {
Toast.makeText(G.context, "No Sound", Toast.LENGTH_SHORT).show();
}
} else {
mediaPlayer.pause();
}
}
اینم متد setOnCompletionListener :
mediaPlayer.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer player) {
player.stop();
player.reset();
playNewSound(true);
}
});
اگه کسی از دوستان میتونه کمک کنه ممنون میشم. با تشکر
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .