legado icon indicating copy to clipboard operation
legado copied to clipboard

如果书源无法链接,在书架显示的目录数量有一定机率变成1

Open zousizhe opened this issue 2 years ago • 19 comments

确认 / Assignments

  • [X] 搜索现有issues,不存在相似或相关的issue / No similar or related issues
  • [X] 最新测试版依然存在此问题 / Latest beta app does not work
  • [X] 此问题和Xposed、Lsposed、Magisk、手机主题、浏览器插件等无关 / Make sure your machine is not touched by hook frameworks, plugins etc

问题描述 / Describe Bugs

如果有些已经缓存好的小说书源网址已经无法访问时,比如需要梯子才能进的源,这时候阅读这本小说,有一定机率在书架的章节数量显示变成1,详情页最新章节也会显示成第一章,但是阅读记录正常,进目录显示的章节也正常,然后就变成当前所处的章节超出章节数目的情况

复现步骤 / How to reproduce

阅读已缓存但是书源地址已经无法访问的小说时,有机率章节数目

确认 / Assignment

  • [X] 已经提交复现所需要的附加资料 / Submit additions related with bugs

其他信息 / Additions

No response

日志提交 / Relevant log output

No response

阅读版本 / Legado version

3.24

Android版本 / Android version

Android 14

机型 / Model

Redmi K60 pro

zousizhe avatar Jan 19 '24 18:01 zousizhe

Screenshot_2024-01-20-02-39-10-627_io legado app releaseA Screenshot_2024-01-20-02-38-22-864_io legado app releaseA

zousizhe avatar Jan 19 '24 18:01 zousizhe

这个显示的是最新章节名称而非章节数量

821938089 avatar Jan 20 '24 01:01 821938089

这个显示的是最新章节名称而非章节数量

那最新章节为1,但是我当前所在却是第五章

zousizhe avatar Jan 20 '24 06:01 zousizhe

没找到是啥问题,可能是原网站目录有问题或净化规则的问题

821938089 avatar Jan 20 '24 12:01 821938089

没找到是啥问题,可能是原网站目录有问题或净化规则的问题

https://github.com/gedoor/legado/assets/37259360/5810d143-61c9-4fe4-8474-d1dcc2010914

https://jt12.de/SYV2_4/2024/01/21/0/57/17/170576983765abfb6ddf3ec.json

这个源就会出现问题,这种源有两个特点,墙得很彻底,浏览器完全不走进度条就报结果,另一个就是这个源在被墙的情况获取目录页数失败,会匹配成一页,还有个类似的也出现这个问题

bug触发条件,在挂代理的时候,使用这个源多找几本书缓存好,关闭代理,隔段时间随便找几本进去翻几章节,再退出正文,就有较大机率触发,不翻页不会去触发。净化全部关掉也会触发。

zousizhe avatar Jan 20 '24 17:01 zousizhe

https://github.com/gedoor/legado/assets/37259360/2c1247ee-7b3b-41fa-ac6e-745aaf38adc7

zousizhe avatar Jan 20 '24 17:01 zousizhe

没找到是啥问题,可能是原网站目录有问题或净化规则的问题

另外还有个问题,在切换章节之后,书架与详情页较大机率不会刷新当前所在章节,切换到第二章,书架与详情记录里还显示当前正在第一章

https://github.com/gedoor/legado/assets/37259360/52ac81d7-a37b-4bdd-974d-fa2a10092b6a

zousizhe avatar Jan 20 '24 23:01 zousizhe

切换章节问题已修复

我增加了日志记录,你试试用最新测试版复现一下,先在其他设置里打开记录日志,复现后去关于里保存日志,然后打包发过来

821938089 avatar Jan 21 '24 03:01 821938089

切换章节问题已修复

我增加了日志记录,你试试用最新测试版复现一下,先在其他设置里打开记录日志,复现后去关于里保存日志,然后打包发过来

https://i-720.wwentua.com:446/01211200159228657bb/2024/01/21/32a81ec8a568978e96f4d94b587e27ba.7z?st=y0LwIwYHeCHeoo7LX-wNGA&e=1705814948&b=BTsLZFQzVCIHfANiVnw_c&fi=159228657&pid=113-76-10-165&up=2&mp=1&co=0

zousizhe avatar Jan 21 '24 04:01 zousizhe

书源问题,这个网站没有被墙, 只是国内访问会返回502,但是由于书源问题更新目录时仍会获取到一章,所以最新章会显示为1

821938089 avatar Jan 21 '24 06:01 821938089

书源问题,这个网站没有被墙, 只是国内访问会返回502,但是由于书源问题更新目录时仍会获取到一章,所以最新章会显示为1

但是小说并没有检测更新,为什么最新章节栏会单独更新,这个项目读取的应该是目录数据吧,但是并没有触发检测更新,当前目录数量还是完整的,并没有发生变化,这个功能能越过小说更新单独检测吗

zousizhe avatar Jan 21 '24 10:01 zousizhe

有检测更新的,读到末尾章节(倒数x章内,x取预下载章节数)后会有可能触发更新

821938089 avatar Jan 21 '24 11:01 821938089

有检测更新的,读到末尾章节(倒数x章内,x取预下载章节数)后会有可能触发更新

你说的确实对,会触发更新,但是这个效果又和触发小说更新不一样,目录并没有被覆盖成1,如果去触发小说更新,目录数量全会变成1

zousizhe avatar Jan 21 '24 12:01 zousizhe

这里的检测更新要有新章节才会更新目录,即获取到的章节数量要大于目前的数量,你这种情况不符合条件,所以章节数量不会变

821938089 avatar Jan 21 '24 12:01 821938089

这里的检测更新要有新章节才会更新目录,即获取到的章节数量要大于目前的数量,你这种情况不符合条件,所以章节数量不会变

这样很好啊,能不能把书架下拉刷新也改成种机制

zousizhe avatar Jan 21 '24 12:01 zousizhe

不行,章节数量是有可能变少的,有些人写的源可能是看别的东西

821938089 avatar Jan 21 '24 12:01 821938089

不行,章节数量是有可能变少的,有些人写的源可能是看别的东西

那么现在的情况是,目录在章节变少时会自动判断不覆盖数据,最新章节却会选择覆盖数据,导致数据不一致,然后反向操作,在网络畅通的情况下,最新章节在变成1的时候,同样的操作,现在却不会还原,又不触发了,需要去下拉刷新小说更新才会还原,这个情况下最新章节应该比1多了,这次却又不覆盖数据了

zousizhe avatar Jan 21 '24 13:01 zousizhe

检测间隔10分钟,你需要10分钟后在末尾章节翻下页才会更新

821938089 avatar Jan 21 '24 13:01 821938089

由于长期没有状态更新,该问题将于5天后自动关闭。如有需要可重新打开。

github-actions[bot] avatar Feb 21 '24 01:02 github-actions[bot]