mirror of
https://github.com/gedoor/legado.git
synced 2025-08-10 00:52:30 +00:00
优化
This commit is contained in:
@@ -21,7 +21,7 @@ abstract class BaseAssociationViewModel(application: Application) : BaseViewMode
|
||||
}
|
||||
}
|
||||
|
||||
fun importJson(json: String) {
|
||||
private fun importJson(json: String) {
|
||||
//暂时根据文件内容判断属于什么
|
||||
when {
|
||||
json.contains("sourceUrl") ->
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
package io.legado.app.ui.association
|
||||
|
||||
import android.app.Application
|
||||
import androidx.core.net.toUri
|
||||
import io.legado.app.R
|
||||
import io.legado.app.help.config.ReadBookConfig
|
||||
import io.legado.app.help.http.newCallResponseBody
|
||||
import io.legado.app.help.http.okHttpClient
|
||||
import io.legado.app.help.http.text
|
||||
import io.legado.app.utils.FileUtils
|
||||
import io.legado.app.utils.externalFiles
|
||||
import okhttp3.MediaType.Companion.toMediaType
|
||||
import splitties.init.appCtx
|
||||
|
||||
class OnLineImportViewModel(app: Application) : BaseAssociationViewModel(app) {
|
||||
|
||||
@@ -72,8 +76,18 @@ class OnLineImportViewModel(app: Application) : BaseAssociationViewModel(app) {
|
||||
importReadConfig(rs.bytes(), finally)
|
||||
}
|
||||
else -> {
|
||||
val json = rs.text("utf-8")
|
||||
importJson(json)
|
||||
val inputStream = rs.byteStream()
|
||||
val file = FileUtils.createFileIfNotExist(
|
||||
appCtx.externalFiles,
|
||||
"book_cache",
|
||||
"scheme_import_cache.json"
|
||||
)
|
||||
file.outputStream().use { out ->
|
||||
inputStream.use {
|
||||
it.copyTo(out)
|
||||
}
|
||||
}
|
||||
importJson(file.toUri())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user