kunfei 4 سال پیش
والد
کامیت
58b1a78eac
40فایلهای تغییر یافته به همراه76 افزوده شده و 71 حذف شده
  1. 8 0
      app/src/main/java/io/legado/app/exception/ConcurrentException.kt
  2. 6 0
      app/src/main/java/io/legado/app/exception/ContentEmptyException.kt
  3. 12 0
      app/src/main/java/io/legado/app/exception/NoStackTraceException.kt
  4. 6 0
      app/src/main/java/io/legado/app/exception/TocEmptyException.kt
  5. 1 1
      app/src/main/java/io/legado/app/help/AppUpdate.kt
  6. 1 1
      app/src/main/java/io/legado/app/help/DirectLinkUpload.kt
  7. 1 1
      app/src/main/java/io/legado/app/help/config/ReadBookConfig.kt
  8. 1 1
      app/src/main/java/io/legado/app/help/glide/OkHttpStreamFetcher.kt
  9. 1 1
      app/src/main/java/io/legado/app/help/http/BackstageWebView.kt
  10. 1 1
      app/src/main/java/io/legado/app/help/storage/AppWebDav.kt
  11. 1 0
      app/src/main/java/io/legado/app/model/CacheBook.kt
  12. 0 29
      app/src/main/java/io/legado/app/model/Exceptions.kt
  13. 1 1
      app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeUrl.kt
  14. 1 1
      app/src/main/java/io/legado/app/model/localBook/LocalBook.kt
  15. 1 1
      app/src/main/java/io/legado/app/model/rss/RssParserByRule.kt
  16. 2 2
      app/src/main/java/io/legado/app/model/webBook/BookChapterList.kt
  17. 2 2
      app/src/main/java/io/legado/app/model/webBook/BookContent.kt
  18. 1 1
      app/src/main/java/io/legado/app/model/webBook/BookInfo.kt
  19. 1 1
      app/src/main/java/io/legado/app/model/webBook/BookList.kt
  20. 1 1
      app/src/main/java/io/legado/app/model/webBook/WebBook.kt
  21. 7 3
      app/src/main/java/io/legado/app/service/CheckSourceService.kt
  22. 2 2
      app/src/main/java/io/legado/app/service/HttpReadAloudService.kt
  23. 1 1
      app/src/main/java/io/legado/app/service/TTSReadAloudService.kt
  24. 1 1
      app/src/main/java/io/legado/app/ui/association/BaseAssociationViewModel.kt
  25. 1 1
      app/src/main/java/io/legado/app/ui/association/FileAssociationViewModel.kt
  26. 1 1
      app/src/main/java/io/legado/app/ui/association/ImportBookSourceViewModel.kt
  27. 1 1
      app/src/main/java/io/legado/app/ui/association/ImportRssSourceViewModel.kt
  28. 1 1
      app/src/main/java/io/legado/app/ui/book/cache/CacheViewModel.kt
  29. 1 2
      app/src/main/java/io/legado/app/ui/book/changesource/ChangeChapterSourceViewModel.kt
  30. 1 1
      app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt
  31. 1 1
      app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt
  32. 1 1
      app/src/main/java/io/legado/app/ui/book/read/ReadBookViewModel.kt
  33. 1 1
      app/src/main/java/io/legado/app/ui/book/read/config/HttpTtsEditViewModel.kt
  34. 1 1
      app/src/main/java/io/legado/app/ui/book/read/config/SpeakEngineViewModel.kt
  35. 1 1
      app/src/main/java/io/legado/app/ui/book/source/edit/BookSourceEditViewModel.kt
  36. 1 2
      app/src/main/java/io/legado/app/ui/browser/WebViewModel.kt
  37. 1 1
      app/src/main/java/io/legado/app/ui/login/SourceLoginViewModel.kt
  38. 1 1
      app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfViewModel.kt
  39. 1 1
      app/src/main/java/io/legado/app/utils/DocumentExtensions.kt
  40. 1 2
      app/src/main/java/io/legado/app/utils/UriExtensions.kt

+ 8 - 0
app/src/main/java/io/legado/app/exception/ConcurrentException.kt

@@ -0,0 +1,8 @@
+@file:Suppress("unused")
+
+package io.legado.app.exception
+
+/**
+ * 并发限制
+ */
+class ConcurrentException(msg: String, val waitTime: Int) : NoStackTraceException(msg)

+ 6 - 0
app/src/main/java/io/legado/app/exception/ContentEmptyException.kt

@@ -0,0 +1,6 @@
+package io.legado.app.exception
+
+/**
+ * 内容为空
+ */
+class ContentEmptyException(msg: String) : NoStackTraceException(msg)

+ 12 - 0
app/src/main/java/io/legado/app/exception/NoStackTraceException.kt

@@ -0,0 +1,12 @@
+package io.legado.app.exception
+
+/**
+ * 不记录错误堆栈的报错
+ */
+open class NoStackTraceException(msg: String) : Exception(msg) {
+
+    override fun fillInStackTrace(): Throwable {
+        return this
+    }
+
+}

+ 6 - 0
app/src/main/java/io/legado/app/exception/TocEmptyException.kt

@@ -0,0 +1,6 @@
+package io.legado.app.exception
+
+/**
+ * 目录为空
+ */
+class TocEmptyException(msg: String) : NoStackTraceException(msg)

+ 1 - 1
app/src/main/java/io/legado/app/help/AppUpdate.kt

@@ -2,10 +2,10 @@ package io.legado.app.help
 
 
 import io.legado.app.R
 import io.legado.app.R
 import io.legado.app.constant.AppConst
 import io.legado.app.constant.AppConst
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.http.newCallStrResponse
 import io.legado.app.help.http.newCallStrResponse
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.okHttpClient
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.jsonPath
 import io.legado.app.utils.jsonPath
 import io.legado.app.utils.readString
 import io.legado.app.utils.readString
 import io.legado.app.utils.toastOnUi
 import io.legado.app.utils.toastOnUi

+ 1 - 1
app/src/main/java/io/legado/app/help/DirectLinkUpload.kt

@@ -1,6 +1,6 @@
 package io.legado.app.help
 package io.legado.app.help
 
 
-import io.legado.app.model.NoStackTraceException
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.utils.jsonPath
 import io.legado.app.utils.jsonPath

+ 1 - 1
app/src/main/java/io/legado/app/help/config/ReadBookConfig.kt

@@ -9,9 +9,9 @@ import io.legado.app.R
 import io.legado.app.constant.AppLog
 import io.legado.app.constant.AppLog
 import io.legado.app.constant.PageAnim
 import io.legado.app.constant.PageAnim
 import io.legado.app.constant.PreferKey
 import io.legado.app.constant.PreferKey
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.DefaultData
 import io.legado.app.help.DefaultData
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.coroutine.Coroutine
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.ui.book.read.page.provider.ChapterProvider
 import io.legado.app.ui.book.read.page.provider.ChapterProvider
 import io.legado.app.utils.*
 import io.legado.app.utils.*
 import kotlinx.coroutines.Dispatchers.IO
 import kotlinx.coroutines.Dispatchers.IO

+ 1 - 1
app/src/main/java/io/legado/app/help/glide/OkHttpStreamFetcher.kt

@@ -8,8 +8,8 @@ import com.bumptech.glide.load.data.DataFetcher
 import com.bumptech.glide.load.model.GlideUrl
 import com.bumptech.glide.load.model.GlideUrl
 import com.bumptech.glide.util.ContentLengthInputStream
 import com.bumptech.glide.util.ContentLengthInputStream
 import com.bumptech.glide.util.Preconditions
 import com.bumptech.glide.util.Preconditions
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.okHttpClient
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.isWifiConnect
 import io.legado.app.utils.isWifiConnect
 import okhttp3.Call
 import okhttp3.Call
 import okhttp3.Request
 import okhttp3.Request

+ 1 - 1
app/src/main/java/io/legado/app/help/http/BackstageWebView.kt

@@ -9,8 +9,8 @@ import android.webkit.WebSettings
 import android.webkit.WebView
 import android.webkit.WebView
 import android.webkit.WebViewClient
 import android.webkit.WebViewClient
 import io.legado.app.constant.AppConst
 import io.legado.app.constant.AppConst
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.runOnUI
 import io.legado.app.utils.runOnUI
 import kotlinx.coroutines.Runnable
 import kotlinx.coroutines.Runnable
 import kotlinx.coroutines.suspendCancellableCoroutine
 import kotlinx.coroutines.suspendCancellableCoroutine

+ 1 - 1
app/src/main/java/io/legado/app/help/storage/AppWebDav.kt

@@ -7,12 +7,12 @@ import io.legado.app.R
 import io.legado.app.constant.PreferKey
 import io.legado.app.constant.PreferKey
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookProgress
 import io.legado.app.data.entities.BookProgress
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.lib.dialogs.selector
 import io.legado.app.lib.dialogs.selector
 import io.legado.app.lib.webdav.HttpAuth
 import io.legado.app.lib.webdav.HttpAuth
 import io.legado.app.lib.webdav.WebDav
 import io.legado.app.lib.webdav.WebDav
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.*
 import io.legado.app.utils.*
 import kotlinx.coroutines.Dispatchers.IO
 import kotlinx.coroutines.Dispatchers.IO
 import kotlinx.coroutines.Dispatchers.Main
 import kotlinx.coroutines.Dispatchers.Main

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

@@ -8,6 +8,7 @@ import io.legado.app.data.appDb
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
+import io.legado.app.exception.ConcurrentException
 import io.legado.app.help.BookHelp
 import io.legado.app.help.BookHelp
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.service.CacheBookService
 import io.legado.app.service.CacheBookService

+ 0 - 29
app/src/main/java/io/legado/app/model/Exceptions.kt

@@ -1,29 +0,0 @@
-@file:Suppress("unused")
-
-package io.legado.app.model
-
-/**
- * 不记录错误堆栈的报错
- */
-open class NoStackTraceException(msg: String) : Exception(msg) {
-
-    override fun fillInStackTrace(): Throwable {
-        return this
-    }
-
-}
-
-/**
- * 目录为空
- */
-class TocEmptyException(msg: String) : NoStackTraceException(msg)
-
-/**
- * 内容为空
- */
-class ContentEmptyException(msg: String) : NoStackTraceException(msg)
-
-/**
- * 并发限制
- */
-class ConcurrentException(msg: String, val waitTime: Int) : NoStackTraceException(msg)

+ 1 - 1
app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeUrl.kt

@@ -12,11 +12,11 @@ import io.legado.app.constant.AppPattern.dataUriRegex
 import io.legado.app.data.entities.BaseSource
 import io.legado.app.data.entities.BaseSource
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
+import io.legado.app.exception.ConcurrentException
 import io.legado.app.help.CacheManager
 import io.legado.app.help.CacheManager
 import io.legado.app.help.JsExtensions
 import io.legado.app.help.JsExtensions
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.http.*
 import io.legado.app.help.http.*
-import io.legado.app.model.ConcurrentException
 import io.legado.app.utils.*
 import io.legado.app.utils.*
 import kotlinx.coroutines.runBlocking
 import kotlinx.coroutines.runBlocking
 import okhttp3.MediaType.Companion.toMediaType
 import okhttp3.MediaType.Companion.toMediaType

+ 1 - 1
app/src/main/java/io/legado/app/model/localBook/LocalBook.kt

@@ -7,9 +7,9 @@ import io.legado.app.constant.AppConst
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
+import io.legado.app.exception.TocEmptyException
 import io.legado.app.help.BookHelp
 import io.legado.app.help.BookHelp
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
-import io.legado.app.model.TocEmptyException
 import io.legado.app.utils.*
 import io.legado.app.utils.*
 import splitties.init.appCtx
 import splitties.init.appCtx
 import java.io.File
 import java.io.File

+ 1 - 1
app/src/main/java/io/legado/app/model/rss/RssParserByRule.kt

@@ -4,8 +4,8 @@ import androidx.annotation.Keep
 import io.legado.app.R
 import io.legado.app.R
 import io.legado.app.data.entities.RssArticle
 import io.legado.app.data.entities.RssArticle
 import io.legado.app.data.entities.RssSource
 import io.legado.app.data.entities.RssSource
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.model.Debug
 import io.legado.app.model.Debug
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.RuleData
 import io.legado.app.model.analyzeRule.RuleData
 import io.legado.app.utils.NetworkUtils
 import io.legado.app.utils.NetworkUtils

+ 2 - 2
app/src/main/java/io/legado/app/model/webBook/BookChapterList.kt

@@ -6,10 +6,10 @@ import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.rule.TocRule
 import io.legado.app.data.entities.rule.TocRule
+import io.legado.app.exception.NoStackTraceException
+import io.legado.app.exception.TocEmptyException
 import io.legado.app.help.ContentProcessor
 import io.legado.app.help.ContentProcessor
 import io.legado.app.model.Debug
 import io.legado.app.model.Debug
-import io.legado.app.model.NoStackTraceException
-import io.legado.app.model.TocEmptyException
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.utils.isTrue
 import io.legado.app.utils.isTrue

+ 2 - 2
app/src/main/java/io/legado/app/model/webBook/BookContent.kt

@@ -6,10 +6,10 @@ import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.rule.ContentRule
 import io.legado.app.data.entities.rule.ContentRule
+import io.legado.app.exception.ContentEmptyException
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.BookHelp
 import io.legado.app.help.BookHelp
-import io.legado.app.model.ContentEmptyException
 import io.legado.app.model.Debug
 import io.legado.app.model.Debug
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.utils.HtmlFormatter
 import io.legado.app.utils.HtmlFormatter

+ 1 - 1
app/src/main/java/io/legado/app/model/webBook/BookInfo.kt

@@ -3,9 +3,9 @@ package io.legado.app.model.webBook
 import io.legado.app.R
 import io.legado.app.R
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.BookHelp
 import io.legado.app.help.BookHelp
 import io.legado.app.model.Debug
 import io.legado.app.model.Debug
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.utils.DebugLog
 import io.legado.app.utils.DebugLog
 import io.legado.app.utils.HtmlFormatter
 import io.legado.app.utils.HtmlFormatter

+ 1 - 1
app/src/main/java/io/legado/app/model/webBook/BookList.kt

@@ -5,9 +5,9 @@ import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.SearchBook
 import io.legado.app.data.entities.SearchBook
 import io.legado.app.data.entities.rule.BookListRule
 import io.legado.app.data.entities.rule.BookListRule
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.BookHelp
 import io.legado.app.help.BookHelp
 import io.legado.app.model.Debug
 import io.legado.app.model.Debug
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeRule
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.model.analyzeRule.RuleData
 import io.legado.app.model.analyzeRule.RuleData

+ 1 - 1
app/src/main/java/io/legado/app/model/webBook/WebBook.kt

@@ -4,10 +4,10 @@ import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.SearchBook
 import io.legado.app.data.entities.SearchBook
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.http.StrResponse
 import io.legado.app.help.http.StrResponse
 import io.legado.app.model.Debug
 import io.legado.app.model.Debug
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.model.analyzeRule.RuleData
 import io.legado.app.model.analyzeRule.RuleData
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.CoroutineScope

+ 7 - 3
app/src/main/java/io/legado/app/service/CheckSourceService.kt

@@ -10,8 +10,12 @@ import io.legado.app.constant.IntentAction
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
+import io.legado.app.exception.ContentEmptyException
+import io.legado.app.exception.NoStackTraceException
+import io.legado.app.exception.TocEmptyException
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
-import io.legado.app.model.*
+import io.legado.app.model.CheckSource
+import io.legado.app.model.Debug
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.ui.book.source.manage.BookSourceActivity
 import io.legado.app.ui.book.source.manage.BookSourceActivity
 import io.legado.app.utils.activityPendingIntent
 import io.legado.app.utils.activityPendingIntent
@@ -22,10 +26,10 @@ import kotlinx.coroutines.Dispatchers.IO
 import kotlinx.coroutines.TimeoutCancellationException
 import kotlinx.coroutines.TimeoutCancellationException
 import kotlinx.coroutines.asCoroutineDispatcher
 import kotlinx.coroutines.asCoroutineDispatcher
 import kotlinx.coroutines.launch
 import kotlinx.coroutines.launch
-import java.util.concurrent.Executors
-import kotlin.math.min
 import org.mozilla.javascript.WrappedException
 import org.mozilla.javascript.WrappedException
+import java.util.concurrent.Executors
 import javax.script.ScriptException
 import javax.script.ScriptException
+import kotlin.math.min
 
 
 /**
 /**
  * 校验书源
  * 校验书源

+ 2 - 2
app/src/main/java/io/legado/app/service/HttpReadAloudService.kt

@@ -10,10 +10,10 @@ import io.legado.app.R
 import io.legado.app.constant.AppLog
 import io.legado.app.constant.AppLog
 import io.legado.app.constant.AppPattern
 import io.legado.app.constant.AppPattern
 import io.legado.app.constant.EventBus
 import io.legado.app.constant.EventBus
+import io.legado.app.exception.ConcurrentException
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.coroutine.Coroutine
-import io.legado.app.model.ConcurrentException
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.ReadAloud
 import io.legado.app.model.ReadAloud
 import io.legado.app.model.ReadBook
 import io.legado.app.model.ReadBook
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.model.analyzeRule.AnalyzeUrl

+ 1 - 1
app/src/main/java/io/legado/app/service/TTSReadAloudService.kt

@@ -8,10 +8,10 @@ import io.legado.app.constant.AppConst
 import io.legado.app.constant.AppLog
 import io.legado.app.constant.AppLog
 import io.legado.app.constant.AppPattern
 import io.legado.app.constant.AppPattern
 import io.legado.app.constant.EventBus
 import io.legado.app.constant.EventBus
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.MediaHelp
 import io.legado.app.help.MediaHelp
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
 import io.legado.app.lib.dialogs.SelectItem
 import io.legado.app.lib.dialogs.SelectItem
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.ReadAloud
 import io.legado.app.model.ReadAloud
 import io.legado.app.model.ReadBook
 import io.legado.app.model.ReadBook
 import io.legado.app.utils.*
 import io.legado.app.utils.*

+ 1 - 1
app/src/main/java/io/legado/app/ui/association/BaseAssociationViewModel.kt

@@ -6,8 +6,8 @@ import io.legado.app.base.BaseViewModel
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.HttpTTS
 import io.legado.app.data.entities.HttpTTS
 import io.legado.app.data.entities.TxtTocRule
 import io.legado.app.data.entities.TxtTocRule
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.config.ThemeConfig
 import io.legado.app.help.config.ThemeConfig
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.GSON
 import io.legado.app.utils.GSON
 import io.legado.app.utils.fromJsonArray
 import io.legado.app.utils.fromJsonArray
 import io.legado.app.utils.fromJsonObject
 import io.legado.app.utils.fromJsonObject

+ 1 - 1
app/src/main/java/io/legado/app/ui/association/FileAssociationViewModel.kt

@@ -4,7 +4,7 @@ import android.app.Application
 import android.net.Uri
 import android.net.Uri
 import androidx.documentfile.provider.DocumentFile
 import androidx.documentfile.provider.DocumentFile
 import androidx.lifecycle.MutableLiveData
 import androidx.lifecycle.MutableLiveData
-import io.legado.app.model.NoStackTraceException
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.model.localBook.LocalBook
 import io.legado.app.model.localBook.LocalBook
 import io.legado.app.utils.isJson
 import io.legado.app.utils.isJson
 import io.legado.app.utils.printOnDebug
 import io.legado.app.utils.printOnDebug

+ 1 - 1
app/src/main/java/io/legado/app/ui/association/ImportBookSourceViewModel.kt

@@ -8,13 +8,13 @@ import io.legado.app.base.BaseViewModel
 import io.legado.app.constant.AppPattern
 import io.legado.app.constant.AppPattern
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.ContentProcessor
 import io.legado.app.help.ContentProcessor
 import io.legado.app.help.SourceHelp
 import io.legado.app.help.SourceHelp
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.text
 import io.legado.app.help.http.text
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.*
 import io.legado.app.utils.*
 
 
 
 

+ 1 - 1
app/src/main/java/io/legado/app/ui/association/ImportRssSourceViewModel.kt

@@ -8,12 +8,12 @@ import io.legado.app.base.BaseViewModel
 import io.legado.app.constant.AppPattern
 import io.legado.app.constant.AppPattern
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.RssSource
 import io.legado.app.data.entities.RssSource
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.SourceHelp
 import io.legado.app.help.SourceHelp
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.text
 import io.legado.app.help.http.text
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.*
 import io.legado.app.utils.*
 
 
 class ImportRssSourceViewModel(app: Application) : BaseViewModel(app) {
 class ImportRssSourceViewModel(app: Application) : BaseViewModel(app) {

+ 1 - 1
app/src/main/java/io/legado/app/ui/book/cache/CacheViewModel.kt

@@ -16,11 +16,11 @@ import io.legado.app.constant.AppPattern
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.BookHelp
 import io.legado.app.help.BookHelp
 import io.legado.app.help.ContentProcessor
 import io.legado.app.help.ContentProcessor
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.storage.AppWebDav
 import io.legado.app.help.storage.AppWebDav
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.*
 import io.legado.app.utils.*
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.ensureActive
 import kotlinx.coroutines.ensureActive

+ 1 - 2
app/src/main/java/io/legado/app/ui/book/changesource/ChangeChapterSourceViewModel.kt

@@ -13,9 +13,9 @@ import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.SearchBook
 import io.legado.app.data.entities.SearchBook
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.coroutine.CompositeCoroutine
 import io.legado.app.help.coroutine.CompositeCoroutine
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.utils.getPrefBoolean
 import io.legado.app.utils.getPrefBoolean
 import io.legado.app.utils.getPrefString
 import io.legado.app.utils.getPrefString
@@ -28,7 +28,6 @@ import kotlinx.coroutines.flow.callbackFlow
 import kotlinx.coroutines.flow.flowOn
 import kotlinx.coroutines.flow.flowOn
 import kotlinx.coroutines.flow.map
 import kotlinx.coroutines.flow.map
 import splitties.init.appCtx
 import splitties.init.appCtx
-
 import java.util.*
 import java.util.*
 import java.util.concurrent.ConcurrentHashMap
 import java.util.concurrent.ConcurrentHashMap
 import java.util.concurrent.Executors
 import java.util.concurrent.Executors

+ 1 - 1
app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt

@@ -12,11 +12,11 @@ import io.legado.app.data.appDb
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.BookHelp
 import io.legado.app.help.BookHelp
 import io.legado.app.help.ContentProcessor
 import io.legado.app.help.ContentProcessor
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.model.BookCover
 import io.legado.app.model.BookCover
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.ReadBook
 import io.legado.app.model.ReadBook
 import io.legado.app.model.localBook.LocalBook
 import io.legado.app.model.localBook.LocalBook
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.model.webBook.WebBook

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

@@ -22,6 +22,7 @@ import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookProgress
 import io.legado.app.data.entities.BookProgress
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.BookHelp
 import io.legado.app.help.BookHelp
 import io.legado.app.help.IntentData
 import io.legado.app.help.IntentData
 import io.legado.app.help.config.ReadBookConfig
 import io.legado.app.help.config.ReadBookConfig
@@ -32,7 +33,6 @@ import io.legado.app.help.storage.Backup
 import io.legado.app.lib.dialogs.alert
 import io.legado.app.lib.dialogs.alert
 import io.legado.app.lib.dialogs.selector
 import io.legado.app.lib.dialogs.selector
 import io.legado.app.lib.theme.accentColor
 import io.legado.app.lib.theme.accentColor
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.ReadAloud
 import io.legado.app.model.ReadAloud
 import io.legado.app.model.ReadBook
 import io.legado.app.model.ReadBook
 import io.legado.app.receiver.TimeBatteryReceiver
 import io.legado.app.receiver.TimeBatteryReceiver

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

@@ -12,12 +12,12 @@ import io.legado.app.data.appDb
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookProgress
 import io.legado.app.data.entities.BookProgress
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.BookHelp
 import io.legado.app.help.BookHelp
 import io.legado.app.help.ContentProcessor
 import io.legado.app.help.ContentProcessor
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.help.storage.AppWebDav
 import io.legado.app.help.storage.AppWebDav
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.ReadAloud
 import io.legado.app.model.ReadAloud
 import io.legado.app.model.ReadBook
 import io.legado.app.model.ReadBook
 import io.legado.app.model.localBook.LocalBook
 import io.legado.app.model.localBook.LocalBook

+ 1 - 1
app/src/main/java/io/legado/app/ui/book/read/config/HttpTtsEditViewModel.kt

@@ -5,7 +5,7 @@ import android.os.Bundle
 import io.legado.app.base.BaseViewModel
 import io.legado.app.base.BaseViewModel
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.HttpTTS
 import io.legado.app.data.entities.HttpTTS
-import io.legado.app.model.NoStackTraceException
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.model.ReadAloud
 import io.legado.app.model.ReadAloud
 import io.legado.app.utils.getClipText
 import io.legado.app.utils.getClipText
 import io.legado.app.utils.isJsonArray
 import io.legado.app.utils.isJsonArray

+ 1 - 1
app/src/main/java/io/legado/app/ui/book/read/config/SpeakEngineViewModel.kt

@@ -6,11 +6,11 @@ import android.speech.tts.TextToSpeech
 import io.legado.app.base.BaseViewModel
 import io.legado.app.base.BaseViewModel
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.HttpTTS
 import io.legado.app.data.entities.HttpTTS
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.DefaultData
 import io.legado.app.help.DefaultData
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.text
 import io.legado.app.help.http.text
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.isJsonArray
 import io.legado.app.utils.isJsonArray
 import io.legado.app.utils.isJsonObject
 import io.legado.app.utils.isJsonObject
 import io.legado.app.utils.readText
 import io.legado.app.utils.readText

+ 1 - 1
app/src/main/java/io/legado/app/ui/book/source/edit/BookSourceEditViewModel.kt

@@ -5,10 +5,10 @@ import android.content.Intent
 import io.legado.app.base.BaseViewModel
 import io.legado.app.base.BaseViewModel
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.RuleComplete
 import io.legado.app.help.RuleComplete
 import io.legado.app.help.http.newCallStrResponse
 import io.legado.app.help.http.newCallStrResponse
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.okHttpClient
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.utils.*
 import io.legado.app.utils.*
 import kotlinx.coroutines.Dispatchers
 import kotlinx.coroutines.Dispatchers
 
 

+ 1 - 2
app/src/main/java/io/legado/app/ui/browser/WebViewModel.kt

@@ -8,13 +8,12 @@ import android.webkit.URLUtil
 import androidx.documentfile.provider.DocumentFile
 import androidx.documentfile.provider.DocumentFile
 import io.legado.app.base.BaseViewModel
 import io.legado.app.base.BaseViewModel
 import io.legado.app.constant.AppConst
 import io.legado.app.constant.AppConst
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.IntentData
 import io.legado.app.help.IntentData
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.okHttpClient
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.model.analyzeRule.AnalyzeUrl
 import io.legado.app.utils.*
 import io.legado.app.utils.*
-
 import java.io.File
 import java.io.File
 import java.util.*
 import java.util.*
 
 

+ 1 - 1
app/src/main/java/io/legado/app/ui/login/SourceLoginViewModel.kt

@@ -5,7 +5,7 @@ import android.content.Intent
 import io.legado.app.base.BaseViewModel
 import io.legado.app.base.BaseViewModel
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.BaseSource
 import io.legado.app.data.entities.BaseSource
-import io.legado.app.model.NoStackTraceException
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.utils.toastOnUi
 import io.legado.app.utils.toastOnUi
 
 
 class SourceLoginViewModel(application: Application) : BaseViewModel(application) {
 class SourceLoginViewModel(application: Application) : BaseViewModel(application) {

+ 1 - 1
app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfViewModel.kt

@@ -7,10 +7,10 @@ import io.legado.app.base.BaseViewModel
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookSource
 import io.legado.app.data.entities.BookSource
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.newCallResponseBody
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.okHttpClient
 import io.legado.app.help.http.text
 import io.legado.app.help.http.text
-import io.legado.app.model.NoStackTraceException
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.utils.*
 import io.legado.app.utils.*
 import kotlinx.coroutines.Dispatchers.IO
 import kotlinx.coroutines.Dispatchers.IO

+ 1 - 1
app/src/main/java/io/legado/app/utils/DocumentExtensions.kt

@@ -5,7 +5,7 @@ import android.database.Cursor
 import android.net.Uri
 import android.net.Uri
 import android.provider.DocumentsContract
 import android.provider.DocumentsContract
 import androidx.documentfile.provider.DocumentFile
 import androidx.documentfile.provider.DocumentFile
-import io.legado.app.model.NoStackTraceException
+import io.legado.app.exception.NoStackTraceException
 import splitties.init.appCtx
 import splitties.init.appCtx
 import java.io.File
 import java.io.File
 import java.nio.charset.Charset
 import java.nio.charset.Charset

+ 1 - 2
app/src/main/java/io/legado/app/utils/UriExtensions.kt

@@ -6,10 +6,9 @@ import androidx.appcompat.app.AppCompatActivity
 import androidx.documentfile.provider.DocumentFile
 import androidx.documentfile.provider.DocumentFile
 import androidx.fragment.app.Fragment
 import androidx.fragment.app.Fragment
 import io.legado.app.R
 import io.legado.app.R
+import io.legado.app.exception.NoStackTraceException
 import io.legado.app.lib.permission.Permissions
 import io.legado.app.lib.permission.Permissions
 import io.legado.app.lib.permission.PermissionsCompat
 import io.legado.app.lib.permission.PermissionsCompat
-import io.legado.app.model.NoStackTraceException
-
 import java.io.File
 import java.io.File
 
 
 fun Uri.isContentScheme() = this.scheme == "content"
 fun Uri.isContentScheme() = this.scheme == "content"