From bf18fc4e35deb9bf0c4e2532169f0ab294fcae65 Mon Sep 17 00:00:00 2001 From: kunfei Date: Thu, 20 Oct 2022 14:50:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/io/legado/app/service/BaseReadAloudService.kt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/io/legado/app/service/BaseReadAloudService.kt b/app/src/main/java/io/legado/app/service/BaseReadAloudService.kt index 9b2c9553e..3c9c40d59 100644 --- a/app/src/main/java/io/legado/app/service/BaseReadAloudService.kt +++ b/app/src/main/java/io/legado/app/service/BaseReadAloudService.kt @@ -56,7 +56,9 @@ abstract class BaseReadAloudService : BaseService(), } private val wakeLock by lazy { - powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "legado:readAloud") + powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "legado:readAloud").apply { + setReferenceCounted(false) + } } private val mFocusRequest: AudioFocusRequestCompat by lazy { MediaHelp.buildAudioFocusRequestCompat(this) @@ -174,13 +176,16 @@ abstract class BaseReadAloudService : BaseService(), postEvent(EventBus.ALOUD_STATE, Status.PAUSE) ReadBook.uploadProgress() doDs() + wakeLock.release() } + @SuppressLint("WakelockTimeout") @CallSuper open fun resumeReadAloud() { pause = false upMediaSessionPlaybackState(PlaybackStateCompat.STATE_PLAYING) postEvent(EventBus.ALOUD_STATE, Status.PLAY) + wakeLock.acquire() } abstract fun upSpeechRate(reset: Boolean = false)