gedoor / legado

Legado 3.0 Book Reader with powerful controls & full functions❤️阅读3.0, 阅读是一款可以自定义来源阅读网络内容的工具,为广大网络文学爱好者提供一种方便、快捷舒适的试读体验。
GNU General Public License v3.0
29.91k stars 3.92k forks source link

后台听书时切回阅读发生闪退 #4215

Closed sky-bbk closed 1 month ago

sky-bbk commented 1 month ago

确认 / Assignments

问题描述 / Describe Bugs

后台听书时,切回阅读闪退

复现步骤 / How to reproduce

后台听书时开关了几次梯子,切换回阅读就闪退了,之后没有复现成功

确认 / Assignment

其他信息 / Additions

No response

日志提交 / Relevant log output

SDK_INT=34
WebViewUserAgent=Mozilla/5.0 (Linux; Android 14; 23049RAD8C Build/UKQ1.230804.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/128.0.6613.146 Mobile Safari/537.36
MODEL=23049RAD8C
RELEASE=14
packageName=io.legado.app.release
MANUFACTURER=Xiaomi
versionName=3.24.091916
versionCode=15706
BRAND=Redmi
java.lang.RuntimeException: Unable to start activity ComponentInfo{io.legado.app.release/io.legado.app.ui.book.read.ReadBookActivity}: androidx.fragment.app.Fragment$InstantiationException: Unable to instantiate fragment io.legado.app.ui.book.read.config.SpeakEngineDialog: could not find Fragment constructor
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3991)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4144)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
    at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:149)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:99)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2589)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loopOnce(Looper.java:224)
    at android.os.Looper.loop(Looper.java:318)
    at android.app.ActivityThread.main(ActivityThread.java:8759)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:561)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)
Caused by: androidx.fragment.app.Fragment$InstantiationException: Unable to instantiate fragment io.legado.app.ui.book.read.config.SpeakEngineDialog: could not find Fragment constructor
    at androidx.fragment.app.Fragment.instantiate(SourceFile:13)
    at androidx.fragment.app.FragmentContainer.instantiate(SourceFile:1)
    at androidx.fragment.app.FragmentManager$3.instantiate(SourceFile:18)
    at androidx.fragment.app.FragmentState.instantiate(SourceFile:3)
    at androidx.fragment.app.FragmentStateManager.<init>(SourceFile:13)
    at androidx.fragment.app.FragmentManager.restoreSaveStateInternal(SourceFile:232)
    at androidx.fragment.app.Fragment.restoreChildFragmentState(SourceFile:15)
    at androidx.fragment.app.Fragment.onCreate(SourceFile:4)
    at androidx.preference.PreferenceFragmentCompat.onCreate(SourceFile:1)
    at androidx.fragment.app.Fragment.performCreate(SourceFile:22)
    at androidx.fragment.app.FragmentStateManager.create(SourceFile:41)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(SourceFile:114)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(SourceFile:31)
    at androidx.fragment.app.FragmentManager.moveToState(SourceFile:28)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(SourceFile:10)
    at androidx.fragment.app.FragmentManager.dispatchCreate(SourceFile:12)
    at androidx.fragment.app.Fragment.restoreChildFragmentState(SourceFile:20)
    at androidx.fragment.app.Fragment.onCreate(SourceFile:4)
    at androidx.fragment.app.DialogFragment.onCreate(SourceFile:1)
    at androidx.fragment.app.Fragment.performCreate(SourceFile:22)
    at androidx.fragment.app.FragmentStateManager.create(SourceFile:41)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(SourceFile:114)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(SourceFile:31)
    at androidx.fragment.app.FragmentManager.moveToState(SourceFile:28)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(SourceFile:10)
    at androidx.fragment.app.FragmentManager.dispatchCreate(SourceFile:12)
    at androidx.fragment.app.Fragment.restoreChildFragmentState(SourceFile:20)
    at androidx.fragment.app.Fragment.onCreate(SourceFile:4)
    at androidx.fragment.app.DialogFragment.onCreate(SourceFile:1)
    at io.legado.app.base.BaseDialogFragment.onCreate(SourceFile:1)
    at androidx.fragment.app.Fragment.performCreate(SourceFile:22)
    at androidx.fragment.app.FragmentStateManager.create(SourceFile:41)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(SourceFile:114)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(SourceFile:31)
    at androidx.fragment.app.FragmentManager.moveToState(SourceFile:28)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(SourceFile:10)
    at androidx.fragment.app.FragmentManager.dispatchCreate(SourceFile:12)
    at androidx.fragment.app.FragmentController.dispatchCreate(SourceFile:7)
    at androidx.fragment.app.FragmentActivity.onCreate(SourceFile:13)
    at io.legado.app.base.BaseActivity.onCreate(SourceFile:139)
    at io.legado.app.ui.book.read.BaseReadBookActivity.onCreate(SourceFile:47)
    at android.app.Activity.performCreate(Activity.java:8891)
    at android.app.Activity.performCreate(Activity.java:8856)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1468)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3973)
    ... 12 more
Caused by: java.lang.NoSuchMethodException: io.legado.app.ui.book.read.config.SpeakEngineDialog.<init> []
    at java.lang.Class.getConstructor0(Class.java:3325)
    at java.lang.Class.getConstructor(Class.java:2485)
    at androidx.fragment.app.Fragment.instantiate(SourceFile:5)
    ... 56 more
androidx.fragment.app.Fragment$InstantiationException: Unable to instantiate fragment io.legado.app.ui.book.read.config.SpeakEngineDialog: could not find Fragment constructor
    at androidx.fragment.app.Fragment.instantiate(SourceFile:13)
    at androidx.fragment.app.FragmentContainer.instantiate(SourceFile:1)
    at androidx.fragment.app.FragmentManager$3.instantiate(SourceFile:18)
    at androidx.fragment.app.FragmentState.instantiate(SourceFile:3)
    at androidx.fragment.app.FragmentStateManager.<init>(SourceFile:13)
    at androidx.fragment.app.FragmentManager.restoreSaveStateInternal(SourceFile:232)
    at androidx.fragment.app.Fragment.restoreChildFragmentState(SourceFile:15)
    at androidx.fragment.app.Fragment.onCreate(SourceFile:4)
    at androidx.preference.PreferenceFragmentCompat.onCreate(SourceFile:1)
    at androidx.fragment.app.Fragment.performCreate(SourceFile:22)
    at androidx.fragment.app.FragmentStateManager.create(SourceFile:41)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(SourceFile:114)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(SourceFile:31)
    at androidx.fragment.app.FragmentManager.moveToState(SourceFile:28)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(SourceFile:10)
    at androidx.fragment.app.FragmentManager.dispatchCreate(SourceFile:12)
    at androidx.fragment.app.Fragment.restoreChildFragmentState(SourceFile:20)
    at androidx.fragment.app.Fragment.onCreate(SourceFile:4)
    at androidx.fragment.app.DialogFragment.onCreate(SourceFile:1)
    at androidx.fragment.app.Fragment.performCreate(SourceFile:22)
    at androidx.fragment.app.FragmentStateManager.create(SourceFile:41)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(SourceFile:114)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(SourceFile:31)
    at androidx.fragment.app.FragmentManager.moveToState(SourceFile:28)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(SourceFile:10)
    at androidx.fragment.app.FragmentManager.dispatchCreate(SourceFile:12)
    at androidx.fragment.app.Fragment.restoreChildFragmentState(SourceFile:20)
    at androidx.fragment.app.Fragment.onCreate(SourceFile:4)
    at androidx.fragment.app.DialogFragment.onCreate(SourceFile:1)
    at io.legado.app.base.BaseDialogFragment.onCreate(SourceFile:1)
    at androidx.fragment.app.Fragment.performCreate(SourceFile:22)
    at androidx.fragment.app.FragmentStateManager.create(SourceFile:41)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(SourceFile:114)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(SourceFile:31)
    at androidx.fragment.app.FragmentManager.moveToState(SourceFile:28)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(SourceFile:10)
    at androidx.fragment.app.FragmentManager.dispatchCreate(SourceFile:12)
    at androidx.fragment.app.FragmentController.dispatchCreate(SourceFile:7)
    at androidx.fragment.app.FragmentActivity.onCreate(SourceFile:13)
    at io.legado.app.base.BaseActivity.onCreate(SourceFile:139)
    at io.legado.app.ui.book.read.BaseReadBookActivity.onCreate(SourceFile:47)
    at android.app.Activity.performCreate(Activity.java:8891)
    at android.app.Activity.performCreate(Activity.java:8856)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1468)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3973)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4144)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
    at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:149)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:99)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2589)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loopOnce(Looper.java:224)
    at android.os.Looper.loop(Looper.java:318)
    at android.app.ActivityThread.main(ActivityThread.java:8759)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:561)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)
Caused by: java.lang.NoSuchMethodException: io.legado.app.ui.book.read.config.SpeakEngineDialog.<init> []
    at java.lang.Class.getConstructor0(Class.java:3325)
    at java.lang.Class.getConstructor(Class.java:2485)
    at androidx.fragment.app.Fragment.instantiate(SourceFile:5)
    ... 56 more
java.lang.NoSuchMethodException: io.legado.app.ui.book.read.config.SpeakEngineDialog.<init> []
    at java.lang.Class.getConstructor0(Class.java:3325)
    at java.lang.Class.getConstructor(Class.java:2485)
    at androidx.fragment.app.Fragment.instantiate(SourceFile:5)
    at androidx.fragment.app.FragmentContainer.instantiate(SourceFile:1)
    at androidx.fragment.app.FragmentManager$3.instantiate(SourceFile:18)
    at androidx.fragment.app.FragmentState.instantiate(SourceFile:3)
    at androidx.fragment.app.FragmentStateManager.<init>(SourceFile:13)
    at androidx.fragment.app.FragmentManager.restoreSaveStateInternal(SourceFile:232)
    at androidx.fragment.app.Fragment.restoreChildFragmentState(SourceFile:15)
    at androidx.fragment.app.Fragment.onCreate(SourceFile:4)
    at androidx.preference.PreferenceFragmentCompat.onCreate(SourceFile:1)
    at androidx.fragment.app.Fragment.performCreate(SourceFile:22)
    at androidx.fragment.app.FragmentStateManager.create(SourceFile:41)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(SourceFile:114)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(SourceFile:31)
    at androidx.fragment.app.FragmentManager.moveToState(SourceFile:28)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(SourceFile:10)
    at androidx.fragment.app.FragmentManager.dispatchCreate(SourceFile:12)
    at androidx.fragment.app.Fragment.restoreChildFragmentState(SourceFile:20)
    at androidx.fragment.app.Fragment.onCreate(SourceFile:4)
    at androidx.fragment.app.DialogFragment.onCreate(SourceFile:1)
    at androidx.fragment.app.Fragment.performCreate(SourceFile:22)
    at androidx.fragment.app.FragmentStateManager.create(SourceFile:41)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(SourceFile:114)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(SourceFile:31)
    at androidx.fragment.app.FragmentManager.moveToState(SourceFile:28)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(SourceFile:10)
    at androidx.fragment.app.FragmentManager.dispatchCreate(SourceFile:12)
    at androidx.fragment.app.Fragment.restoreChildFragmentState(SourceFile:20)
    at androidx.fragment.app.Fragment.onCreate(SourceFile:4)
    at androidx.fragment.app.DialogFragment.onCreate(SourceFile:1)
    at io.legado.app.base.BaseDialogFragment.onCreate(SourceFile:1)
    at androidx.fragment.app.Fragment.performCreate(SourceFile:22)
    at androidx.fragment.app.FragmentStateManager.create(SourceFile:41)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(SourceFile:114)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(SourceFile:31)
    at androidx.fragment.app.FragmentManager.moveToState(SourceFile:28)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(SourceFile:10)
    at androidx.fragment.app.FragmentManager.dispatchCreate(SourceFile:12)
    at androidx.fragment.app.FragmentController.dispatchCreate(SourceFile:7)
    at androidx.fragment.app.FragmentActivity.onCreate(SourceFile:13)
    at io.legado.app.base.BaseActivity.onCreate(SourceFile:139)
    at io.legado.app.ui.book.read.BaseReadBookActivity.onCreate(SourceFile:47)
    at android.app.Activity.performCreate(Activity.java:8891)
    at android.app.Activity.performCreate(Activity.java:8856)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1468)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3973)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4144)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
    at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:149)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:99)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2589)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loopOnce(Looper.java:224)
    at android.os.Looper.loop(Looper.java:318)
    at android.app.ActivityThread.main(ActivityThread.java:8759)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:561)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)

阅读版本 / Legado version

3.24.091916

Android版本 / Android version

Android 14

机型 / Model

23049RAD8C

821938089 commented 1 month ago

已修复,试试最新测试版

sky-bbk commented 1 month ago

感谢大佬