pull/1738/head
kunfei 3 years ago
parent eada533161
commit 163fdad8f9
  1. 2
      app/src/main/java/io/legado/app/App.kt
  2. 22
      app/src/main/java/io/legado/app/help/storage/AppWebDav.kt

@ -60,7 +60,7 @@ class App : MultiDexApplication() {
2 -> ChineseUtils.s2t("初始化")
}
//同步阅读记录
if (AppConfig.syncBookProgress) {
if (AppWebDav.isOk && AppConfig.syncBookProgress) {
AppWebDav.downloadAllBookProgress()
}
}

@ -17,6 +17,7 @@ import io.legado.app.lib.webdav.WebDav
import io.legado.app.utils.*
import kotlinx.coroutines.Dispatchers.IO
import kotlinx.coroutines.Dispatchers.Main
import kotlinx.coroutines.runBlocking
import kotlinx.coroutines.withContext
import splitties.init.appCtx
import java.io.File
@ -30,6 +31,12 @@ object AppWebDav {
var isOk = false
init {
runBlocking {
initConfig()
}
}
private val rootWebDavUrl: String
get() {
val configUrl = appCtx.getPrefString(PreferKey.webDavUrl)?.trim()
@ -50,14 +57,15 @@ object AppWebDav {
return "backup${backupDate}.zip"
}
@Throws(Exception::class)
suspend fun initConfig() {
isOk = false
val account = appCtx.getPrefString(PreferKey.webDavAccount)
val password = appCtx.getPrefString(PreferKey.webDavPassword)
if (!account.isNullOrBlank() && !password.isNullOrBlank()) {
HttpAuth.auth = HttpAuth.Auth(account, password)
isOk = WebDav(rootWebDavUrl).makeAsDir() && WebDav(bookProgressUrl).makeAsDir()
kotlin.runCatching {
isOk = false
val account = appCtx.getPrefString(PreferKey.webDavAccount)
val password = appCtx.getPrefString(PreferKey.webDavPassword)
if (!account.isNullOrBlank() && !password.isNullOrBlank()) {
HttpAuth.auth = HttpAuth.Auth(account, password)
isOk = WebDav(rootWebDavUrl).makeAsDir() && WebDav(bookProgressUrl).makeAsDir()
}
}
}

Loading…
Cancel
Save