This commit is contained in:
kunfei 2023-07-07 22:51:12 +08:00
parent df9d097d23
commit 25c898ece0

View File

@ -6,6 +6,7 @@ import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.content.IntentFilter
import android.graphics.Bitmap
import android.graphics.BitmapFactory
import android.media.AudioManager
import android.os.Bundle
@ -80,6 +81,7 @@ abstract class BaseReadAloudService : BaseService(),
internal var pageIndex = 0
private var needResumeOnAudioFocusGain = false
private var dsJob: Job? = null
private var cover: Bitmap? = null
var pageChanged = false
private val broadcastReceiver = object : BroadcastReceiver() {
@ -103,6 +105,15 @@ abstract class BaseReadAloudService : BaseService(),
if (AppConfig.ttsTimer > 0) {
toastOnUi("朗读定时 ${AppConfig.ttsTimer} 分钟")
}
execute {
@Suppress("BlockingMethodInNonBlockingContext")
ImageLoader
.loadBitmap(this@BaseReadAloudService, ReadBook.book?.getDisplayCover())
.submit()
.get()
}.onSuccess {
cover = it
}
}
fun observeLiveBus() {
@ -384,15 +395,11 @@ abstract class BaseReadAloudService : BaseService(),
.setContentIntent(
activityPendingIntent<ReadBookActivity>("activity")
)
kotlin.runCatching {
ImageLoader
.loadBitmap(this@BaseReadAloudService, ReadBook.book?.getDisplayCover())
.submit()
.get()
}.getOrElse {
BitmapFactory.decodeResource(resources, R.drawable.icon_read_book)
}.let {
builder.setLargeIcon(it)
if (cover != null) {
builder.setLargeIcon(cover)
} else {
val bitmap = BitmapFactory.decodeResource(resources, R.drawable.icon_read_book)
builder.setLargeIcon(bitmap)
}
if (pause) {
builder.addAction(