调试订阅添加查看源码

pull/940/head
gedoor 4 years ago
parent 83d1da4947
commit 86cb09a83b
  1. 3
      app/src/main/java/io/legado/app/help/JsExtensions.kt
  2. 7
      app/src/main/java/io/legado/app/model/rss/Rss.kt
  3. 1
      app/src/main/java/io/legado/app/model/rss/RssParserByRule.kt
  4. 20
      app/src/main/java/io/legado/app/ui/rss/read/ReadRssViewModel.kt

@ -334,7 +334,8 @@ interface JsExtensions {
/** /**
* 输出调试日志 * 输出调试日志
*/ */
fun log(msg: String) { fun log(msg: String): String {
Debug.log(msg) Debug.log(msg)
return msg
} }
} }

@ -3,6 +3,7 @@ package io.legado.app.model.rss
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.help.coroutine.Coroutine import io.legado.app.help.coroutine.Coroutine
import io.legado.app.model.Debug
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
@ -38,7 +39,7 @@ object Rss {
scope: CoroutineScope, scope: CoroutineScope,
rssArticle: RssArticle, rssArticle: RssArticle,
ruleContent: String, ruleContent: String,
rssSource: RssSource?, rssSource: RssSource,
context: CoroutineContext = Dispatchers.IO context: CoroutineContext = Dispatchers.IO
): Coroutine<String> { ): Coroutine<String> {
return Coroutine.async(scope, context) { return Coroutine.async(scope, context) {
@ -46,9 +47,11 @@ object Rss {
rssArticle.link, rssArticle.link,
baseUrl = rssArticle.origin, baseUrl = rssArticle.origin,
ruleData = rssArticle, ruleData = rssArticle,
headerMapF = rssSource?.getHeaderMap() headerMapF = rssSource.getHeaderMap()
) )
val body = analyzeUrl.getStrResponse(rssArticle.origin).body val body = analyzeUrl.getStrResponse(rssArticle.origin).body
Debug.log(rssSource.sourceUrl, "≡获取成功:${rssSource.sourceUrl}")
Debug.log(rssSource.sourceUrl, body, state = 20)
val analyzeRule = AnalyzeRule(rssArticle) val analyzeRule = AnalyzeRule(rssArticle)
analyzeRule.setContent(body) analyzeRule.setContent(body)
.setBaseUrl(NetworkUtils.getAbsoluteURL(rssArticle.origin, rssArticle.link)) .setBaseUrl(NetworkUtils.getAbsoluteURL(rssArticle.origin, rssArticle.link))

@ -31,6 +31,7 @@ object RssParserByRule {
) )
} }
Debug.log(sourceUrl, "≡获取成功:$sourceUrl") Debug.log(sourceUrl, "≡获取成功:$sourceUrl")
Debug.log(sourceUrl, body, state = 10)
var ruleArticles = rssSource.ruleArticles var ruleArticles = rssSource.ruleArticles
if (ruleArticles.isNullOrBlank()) { if (ruleArticles.isNullOrBlank()) {
Debug.log(sourceUrl, "⇒列表规则为空, 使用默认规则解析") Debug.log(sourceUrl, "⇒列表规则为空, 使用默认规则解析")

@ -94,16 +94,18 @@ class ReadRssViewModel(application: Application) : BaseViewModel(application),
} }
private fun loadContent(rssArticle: RssArticle, ruleContent: String) { private fun loadContent(rssArticle: RssArticle, ruleContent: String) {
Rss.getContent(this, rssArticle, ruleContent, rssSource) rssSource?.let { source ->
.onSuccess(IO) { body -> Rss.getContent(this, rssArticle, ruleContent, source)
rssArticle.description = body .onSuccess(IO) { body ->
appDb.rssArticleDao.insert(rssArticle) rssArticle.description = body
rssStar?.let { appDb.rssArticleDao.insert(rssArticle)
it.description = body rssStar?.let {
appDb.rssStarDao.insert(it) it.description = body
appDb.rssStarDao.insert(it)
}
contentLiveData.postValue(body)
} }
contentLiveData.postValue(body) }
}
} }
fun favorite() { fun favorite() {

Loading…
Cancel
Save