fix: EdgeTtsManager val 赋值编译错误

apply 块内 isPlaying 赋值改为外部引用,避免 val 重新赋值。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
dongliang
2026-05-08 12:36:18 +09:30
parent 5a386a6060
commit f01b1e3311

View File

@@ -289,23 +289,23 @@ class EdgeTtsManager @Inject constructor(
withContext(Dispatchers.Main) {
try {
stop()
mediaPlayer = MediaPlayer().apply {
setDataSource(file.absolutePath)
setOnCompletionListener {
isPlaying = false
onComplete?.invoke()
Timber.d("$TAG: 播放完成")
}
setOnErrorListener { _, what, extra ->
Timber.e("$TAG: 播放错误 what=$what extra=$extra")
isPlaying = false
true
}
prepare()
start()
isPlaying = true
Timber.d("$TAG: 开始播放")
val player = MediaPlayer()
player.setDataSource(file.absolutePath)
player.setOnCompletionListener {
isPlaying = false
onComplete?.invoke()
Timber.d("$TAG: 播放完成")
}
player.setOnErrorListener { _, what, extra ->
Timber.e("$TAG: 播放错误 what=$what extra=$extra")
isPlaying = false
true
}
player.prepare()
player.start()
mediaPlayer = player
isPlaying = true
Timber.d("$TAG: 开始播放")
} catch (e: Exception) {
Timber.e(e, "$TAG: 播放异常")
isPlaying = false