Sakion-Team / Re-Telegram

An Xposed module to enhance the Telegram
GNU General Public License v3.0
261 stars 16 forks source link

[Bug] 启用模块后造成异常发热及卡顿情况 #57

Open FunnyShadow opened 2 months ago

FunnyShadow commented 2 months ago

What is the problem?

在进行了简单的排查后,我发现可能是因为反撤回功能造成的,但该问题的出现具有不确定性,因此我无法进一步确定问题成因 (例如,我后期禁用掉模块再重新启用后该问题就消失了,同时通过 strace 工具也无法找到相关的报错了,但过了一段时间后该问题又出现了) (我还没有尝试关掉该功能后是否能解决此问题,目前暂时没有很多时间来解决此问题,五一假期的时候可能可以进一步测试,还请谅解)

Scene 上显示的占用情况 (Nagram 占用明显异常 (其中的 system_server 占用异常后期推测可能是因为反撤回功能大量进行数据库读写导致的)) IMG_20240425_182638_721

通过 top -b -n 1 -H 命令查找出现问题的进程 7d8218f18afc5e5b4a460a71c1106cae

使用 strace 工具进行进一步定位问题所在 IMG_20240425_182648_649

部分大佬告诉我这可能是由于 Re: Telegram 无差别记录所有群聊的聊天记录导致的,同时也有其他使用了 Re: Telegram 模块的人和我也有同样的问题,他们说在退出一部分频道后该问题有所缓解,也许可以通过使用一个作用域来解决此问题?

Module version

6.9

Telegram client

Nagram v10.10.1(1169) arm64-v8a release https://github.com/NextAlone/Nagram

Android version

14

Xposed(LSPosed) Logs

这一份文件可能并不包含可以解决的问题的日志,因为此时我已经按照前文所说的禁用模块再进行启用了 如果有需要的话,可以联系我,我可以尝试复现此问题并提供可能包含错误内容的日志 LSPosed_2024-04-25T18_30_01.620305.zip

Nep-Timeline commented 2 months ago

说真的,我建议你先检查一下fcmfix跟tmoe模块,他们似乎在疯狂报错 当然 Re-Telegram 也是一样在疯狂报错(log.old)

Nep-Timeline commented 2 months ago

还有,如果可以的话 我建议你试试使用Nekogram看看此问题是否出现,因为此模块最初是为Nekogram而设计的

FunnyShadow commented 2 months ago

说真的,我建议你先检查一下fcmfix跟tmoe模块,他们似乎在疯狂报错 当然 Re-Telegram 也是一样在疯狂报错(log.old)

fcmfix 这边我之前试过禁用了,没啥区别 tmoe 那边我也问过作者了,他说不是因为 tmoe 导致的)

FunnyShadow commented 2 months ago

还有,如果可以的话 我建议你试试使用Nekogram看看此问题是否出现,因为此模块最初是为Nekogram而设计的

Nagram 是基于 Nekogram 改的,至于原版的 Nekogram......

Nep-Timeline commented 2 months ago

Nagram 是基于 Nekogram X 而不是 Nekogram Nekogram X 相较于 Nekogram 改动很多

Nep-Timeline commented 2 months ago

模块已更新, 请尝试最新由Github Actions自动构建的版本

FunnyShadow commented 2 months ago

okay,我试试

nakixii commented 2 months ago

v7.0依然有这个问题,基本可以确定是由已删除消息引起的

Nep-Timeline commented 2 months ago

v7.0依然有这个问题,基本可以确定是由已删除消息引起的

目前如果需要在消息中显示(已删除)标识 就必须将已删除消息的ID存放在本地 之前就因为此原因被反馈应用异常卡顿 目前不知道有什么其他方法可以解决问题

Nep-Timeline commented 2 months ago

在之后的更新中 我可能会更换消息是否被删除的标记方法 但目前来说 该项目的代码真的非常乱 简直就是一团糟 目前的维护也仅仅是使此模块“可用”

FunnyShadow commented 2 months ago

v7.0依然有这个问题,基本可以确定是由已删除消息引起的

目前如果需要在消息中显示(已删除)标识 就必须将已删除消息的ID存放在本地 之前就因为此原因被反馈应用异常卡顿 目前不知道有什么其他方法可以解决问题

某位大佬告诉我的一个解决办法是尝试通过添加作用域来解决此问题,在指定群启用,而不是所有群都启用此功能

Nep-Timeline commented 2 months ago

v7.0依然有这个问题,基本可以确定是由已删除消息引起的

目前如果需要在消息中显示(已删除)标识 就必须将已删除消息的ID存放在本地 之前就因为此原因被反馈应用异常卡顿 目前不知道有什么其他方法可以解决问题

某位大佬告诉我的一个解决办法是尝试通过添加作用域来解决此问题,在指定群启用,而不是所有群都启用此功能

虽然这样做的确可以降低压力 但是我认为防撤回不应该这样

Nep-Timeline commented 2 months ago

https://www.123pan.com/s/h1szVv-2Kv4H.html

此版本已不需要通过database存储已删除消息ID 应该解决了这个问题 在Nagram测试正常工作 目前并不支持Nekogram

Nep-Timeline commented 2 months ago

https://www.123pan.com/s/h1szVv-iKv4H.html 修了一下bug

FunnyShadow commented 2 months ago

正在测试,需要一段时间才能反馈 目前看来疑似已解决 Screenshot_20240506-131732_Termux.png

Nep-Timeline commented 2 months ago

正在测试,需要一段时间才能反馈 目前看来疑似已解决 Screenshot_20240506-131732_Termux.png

好的 希望问题被解决吧

FunnyShadow commented 1 month ago

问题已解决,十分感谢!

FunnyShadow commented 1 month ago

我可能不得不再把这个 issue 重新打开了 在用了一段时间以后,该问题再次出现,和以前的情况基本没有区别 目前看来,仅仅是问题出现前的时间被延长了,其结果与之前并没有什么异同

FunnyShadow commented 1 month ago

我目前采用的客户端还是 Nagram,软件及模块版本如下

Nep-Timeline commented 1 month ago

我目前采用的客户端还是 Nagram,软件及模块版本如下

  • Nagram: Nagram v10.12.0(1174) arm64-v8a release
  • 模块: Bocchi-85

https://www.123pan.com/s/h1szVv-2Lv4H.html 提取码:B9T2 试一下这个效果怎么样?(没签名)

Fabali commented 1 month ago

最新9.0还是卡

FunnyShadow commented 1 month ago

我目前采用的客户端还是 Nagram,软件及模块版本如下

  • Nagram: Nagram v10.12.0(1174) arm64-v8a release
  • 模块: Bocchi-85

https://www.123pan.com/s/h1szVv-2Lv4H.html 提取码:B9T2 试一下这个效果怎么样?(没签名)

抱歉...前一段没怎么看 GitHub 现在还需要测试吗?

Nep-Timeline commented 1 month ago

暂时不需要 因为问题还在 我目前不知道怎么修复这个问题