У меня есть (обновленный< /strong>) временное решение, указанное ниже:
Мой текущий метод работает следующим образом:
- Создайте аудио-очередь для все ожидающие звуки.
- Воспроизводите каждый последующий, когда onCompletionListener срабатывает.
Но мне интересно, есть ли более оптимальный (читай: менее многословный) способ сделать это. Или — если его нет — я упускаю из виду какие-либо недостатки моего текущего метода?
Примечание. Этот подход требует использования аудиофайла по умолчанию (возможно, заполненного тишина) с именем audio_null.mp3 в папке res/raw для работы в текущей форме:
import android.content.Context
import android.media.MediaPlayer
//Note: Only Instantiate "ClassSounds" Once Per Activity
//Call "mmScheduleSound()" Whenever We Want To Play A Sound File
//Call "mmStopAllPendingSounds()" When Switching Activities
class ClassSounds (val mvContext : Context) {
//Create A MutableList (To Act As A Queue) Comprising "References" To Sound Files
private var mvSoundBuffer : MutableList = arrayListOf()
private var mvSoundCurrent : ClassMediasPlayer = ClassMediasPlayer(R.raw.audio_null) //
Подробнее здесь: https://stackoverflow.com/questions/777 ... e-one-afte