catch and show exceptions thrown at playing sounds

This commit is contained in:
tibbi 2018-03-14 10:11:16 +01:00
parent 5e564bfa25
commit b7faad8742
1 changed files with 11 additions and 6 deletions

View File

@ -11,6 +11,7 @@ import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.extensions.getAlarms
import com.simplemobiletools.clock.models.AlarmSound
import com.simplemobiletools.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.showErrorToast
import kotlinx.android.synthetic.main.dialog_select_alarm_sound.view.*
class SelectAlarmSoundDialog(val activity: SimpleActivity, val currentUri: String, val audioStream: Int, val callback: (alarmSound: AlarmSound) -> Unit) {
@ -26,12 +27,16 @@ class SelectAlarmSoundDialog(val activity: SimpleActivity, val currentUri: Strin
isChecked = alarmSound.uri == currentUri
id = index
setOnClickListener {
mediaPlayer.stop()
mediaPlayer = MediaPlayer().apply {
setAudioStreamType(audioStream)
setDataSource(context, Uri.parse(alarmSound.uri))
prepare()
start()
try {
mediaPlayer.stop()
mediaPlayer = MediaPlayer().apply {
setAudioStreamType(audioStream)
setDataSource(context, Uri.parse(alarmSound.uri))
prepare()
start()
}
} catch (e: Exception) {
activity.showErrorToast(e)
}
}
}