kunfei 4 سال پیش
والد
کامیت
6db3bc6a3e

+ 0 - 1
app/src/main/java/io/legado/app/model/ReadBook.kt

@@ -215,7 +215,6 @@ object ReadBook : CoroutineScope by MainScope() {
      */
      */
     fun readAloud(play: Boolean = true) {
     fun readAloud(play: Boolean = true) {
         book?.let {
         book?.let {
-            ReadAloud.upReadAloudClass()
             ReadAloud.play(appCtx, play)
             ReadAloud.play(appCtx, play)
         }
         }
     }
     }

+ 1 - 0
app/src/main/java/io/legado/app/receiver/MediaButtonReceiver.kt

@@ -86,6 +86,7 @@ class MediaButtonReceiver : BroadcastReceiver() {
                 LifecycleHelp.isExistActivity(AudioPlayActivity::class.java) ->
                 LifecycleHelp.isExistActivity(AudioPlayActivity::class.java) ->
                     postEvent(EventBus.MEDIA_BUTTON, true)
                     postEvent(EventBus.MEDIA_BUTTON, true)
                 else -> if (AppConfig.mediaButtonOnExit || LifecycleHelp.activitySize() > 0 || !isMediaKey) {
                 else -> if (AppConfig.mediaButtonOnExit || LifecycleHelp.activitySize() > 0 || !isMediaKey) {
+                    ReadAloud.upReadAloudClass()
                     if (ReadBook.book != null) {
                     if (ReadBook.book != null) {
                         ReadBook.readAloud()
                         ReadBook.readAloud()
                     } else {
                     } else {

+ 4 - 1
app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt

@@ -863,7 +863,10 @@ class ReadBookActivity : BaseReadBookActivity(),
     override fun onClickReadAloud() {
     override fun onClickReadAloud() {
         autoPageStop()
         autoPageStop()
         when {
         when {
-            !BaseReadAloudService.isRun -> ReadBook.readAloud()
+            !BaseReadAloudService.isRun -> {
+                ReadAloud.upReadAloudClass()
+                ReadBook.readAloud()
+            }
             BaseReadAloudService.pause -> ReadAloud.resume(this)
             BaseReadAloudService.pause -> ReadAloud.resume(this)
             else -> ReadAloud.pause(this)
             else -> ReadAloud.pause(this)
         }
         }

+ 2 - 0
app/src/main/java/io/legado/app/ui/book/read/config/SpeakEngineDialog.kt

@@ -105,6 +105,7 @@ class SpeakEngineDialog(val callBack: CallBack) : BaseDialogFragment(R.layout.di
         tvFooterLeft.setOnClickListener {
         tvFooterLeft.setOnClickListener {
             ReadBook.book?.setTtsEngine(ttsEngine)
             ReadBook.book?.setTtsEngine(ttsEngine)
             callBack.upSpeakEngineSummary()
             callBack.upSpeakEngineSummary()
+            ReadAloud.upReadAloudClass()
             dismissAllowingStateLoss()
             dismissAllowingStateLoss()
         }
         }
         tvOk.setText(R.string.general)
         tvOk.setText(R.string.general)
@@ -112,6 +113,7 @@ class SpeakEngineDialog(val callBack: CallBack) : BaseDialogFragment(R.layout.di
         tvOk.setOnClickListener {
         tvOk.setOnClickListener {
             ReadBook.book?.setTtsEngine(null)
             ReadBook.book?.setTtsEngine(null)
             AppConfig.ttsEngine = ttsEngine
             AppConfig.ttsEngine = ttsEngine
+            ReadAloud.upReadAloudClass()
             dismissAllowingStateLoss()
             dismissAllowingStateLoss()
         }
         }
         tvCancel.visible()
         tvCancel.visible()