前两天写项目的时候有一个播放背景音乐的功能,使用 MediaPlayer 的时候,进行 暂停-> 重置-> 播放 流程时总是莫名其妙的抛出异常。
这里记录一下解决问题的代码:
private var mediaPlayer: MediaPlayer? = null
/**
* 开始播放
*/
private fun playMedia() {
if (mediaPlayer == null) {
mediaPlayer = MediaPlayer.create(this, R.raw.catch_bg)
}
// 为解决第二次播放时抛出的IllegalStateException,这里做了try-catch处理
var isPlaying = false
try {
isPlaying = mediaPlayer!!.isPlaying();
}