fumiama / copymanga

拷贝漫画的第三方APP,优化阅读/下载体验
GNU General Public License v3.0
2.23k stars 55 forks source link

Fragment缓存View导致内存泄漏 #16

Closed crowforkotlin closed 1 year ago

crowforkotlin commented 1 year ago

fragment切回时会导致重走onCreateView,这导致了内存泄漏 582cad92f57e8a239f1573e355b5de8

fumiama commented 1 year ago

这个我解决不了,因为我不是专业开发者( 有解决办法的欢迎PR代码

fumiama commented 1 year ago

尝试修了一下,但是不确保完全修复

crowforkotlin commented 1 year ago

这个问题就得涉及到FragmentNavigation的源码了,navigate的方式在实际用的是fragmentmanager的replace,所以才需要缓存view避免视图重新刷新,这个问题感觉非常逆天(https://issuetracker.google.com/issues/127932815?pli=1)可以看这个链接的对话。 限制navigation的问题最大的问题我感觉就只有缓存方式了,如果要修复直接拷贝navigation的类去修复或者缓存view(但是会内存泄漏)其他问题还有很多,我现在已经打算弃用这个导航了,直接使用fragmentManger手动管理show、replace、hide

crowforkotlin commented 1 year ago

项目过于庞大和屎山,Pr不太合适,建议重0开始...

fumiama commented 1 year ago

我的态度是,能用就行,毕竟我不是专业写安卓的。谁想从零开始就交给他自己吧。😂

crowforkotlin commented 1 year ago

问一下老哥这个接口怎么搞到手的?我打算自己搞一个这个试试

crowforkotlin commented 1 year ago

我在想作者是不是抓包拿到的数据和接口😂

m122469119 commented 1 year ago

林子大了;

fumiama commented 1 year ago

当然是抓包了😂你可以试试http canary