This commit is contained in:
Horis
2025-06-01 20:36:09 +08:00
parent 3c7f9630c9
commit f0cbfade5a
2 changed files with 10 additions and 4 deletions
@@ -16,9 +16,11 @@ class SourceLoginActivity : VMBaseActivity<ActivitySourceLoginBinding, SourceLog
override val viewModel by viewModels<SourceLoginViewModel>()
override fun onActivityCreated(savedInstanceState: Bundle?) {
viewModel.initData(intent) { source ->
viewModel.initData(intent, success = { source ->
initView(source)
}
}, error = {
finish()
})
}
private fun initView(source: BaseSource) {
@@ -2,11 +2,12 @@ package io.legado.app.ui.login
import android.app.Application
import android.content.Intent
import com.script.rhino.runScriptWithContext
import io.legado.app.base.BaseViewModel
import io.legado.app.constant.AppLog
import io.legado.app.data.appDb
import io.legado.app.data.entities.BaseSource
import io.legado.app.exception.NoStackTraceException
import com.script.rhino.runScriptWithContext
import io.legado.app.utils.toastOnUi
class SourceLoginViewModel(application: Application) : BaseViewModel(application) {
@@ -14,7 +15,7 @@ class SourceLoginViewModel(application: Application) : BaseViewModel(application
var source: BaseSource? = null
var headerMap: Map<String, String> = emptyMap()
fun initData(intent: Intent, success: (bookSource: BaseSource) -> Unit) {
fun initData(intent: Intent, success: (bookSource: BaseSource) -> Unit, error: () -> Unit) {
execute {
val sourceKey = intent.getStringExtra("key")
?: throw NoStackTraceException("没有参数")
@@ -33,6 +34,9 @@ class SourceLoginViewModel(application: Application) : BaseViewModel(application
} else {
context.toastOnUi("未找到书源")
}
}.onError {
error.invoke()
AppLog.put("登录 UI 初始化失败\n$it", it, true)
}
}