Giter VIP home page Giter VIP logo

Comments (14)

sorrybeman avatar sorrybeman commented on May 18, 2024

我的想法是在内部加个监听,手动去把它们置空,这样感觉会带来一系列的隐患。

from androidproject.

getActivity avatar getActivity commented on May 18, 2024

我在 Leaks 并没有捕捉内存泄漏的情况

from androidproject.

getActivity avatar getActivity commented on May 18, 2024

我建议你试一下最新的源码编译还会不会出现这个问题,我在之前的版本有修复过关于 Dialog 内存泄漏问题

from androidproject.

sorrybeman avatar sorrybeman commented on May 18, 2024
  • 代码是最新的。我在activity持有DialogBuilder,在dismiss之后, BaseDialog和BaseDialogFragment显示内存泄漏。系统要回收Dialog和DialogFragment,而被持有的Builder又持有它们,所以泄漏了。
  • 上个版本的解决的内存泄漏问题,应该是监听器泄露的,感觉与我这种情况不同。你可以持有Builder类试一试,我看到Demo是没有去持有的,当然也没有必要持有。

from androidproject.

getActivity avatar getActivity commented on May 18, 2024

内存泄漏你是怎么用工具检测的

from androidproject.

sorrybeman avatar sorrybeman commented on May 18, 2024

leakcanary 1.6.2

from androidproject.

getActivity avatar getActivity commented on May 18, 2024

debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.0-beta-3'

from androidproject.

getActivity avatar getActivity commented on May 18, 2024

你换成这个版本再试试

from androidproject.

sorrybeman avatar sorrybeman commented on May 18, 2024
  • 换成的了 2.0,刚刚看到11.27发布了正式版。
├─ XXXFragmentLeaking: NO (Fragment#mFragmentManager is not null)
│    Fragment.mTag=XXX
│    ↓ XXXFragment.XXXDialogBuilder
│                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~
├─ XXXDialog$BuilderLeaking: UNKNOWN
│    ↓ XXXDialog$Builder.mDialogFragment
│                                ~~~~~~~~~~~~~~~
╰→ XXX.widget.dialog.BaseDialogFragmentLeaking: YES (Fragment#mFragmentManager is null and ObjectWatcher was watching this)
​     key = b82a6f82-8bbc-452d-8cf0-be816378d1f3watchDurationMillis = 7714retainedDurationMillis = 2713

METADATA

Build.VERSION.SDK_INT: 24
Build.MANUFACTURER: samsung
LeakCanary version: 2.0
App process name: comXXX
Analysis duration: 8653 ms

from androidproject.

getActivity avatar getActivity commented on May 18, 2024

你换成这个版本再试试看

from androidproject.

sorrybeman avatar sorrybeman commented on May 18, 2024

换成beta3不会报泄漏,这是为何?

from androidproject.

getActivity avatar getActivity commented on May 18, 2024

可能是旧版本的Bug

from androidproject.

sorrybeman avatar sorrybeman commented on May 18, 2024

可能是旧版本的Bug
2.0正式版是最新的,这就奇怪了。那实际上代码本身是不会泄漏的吗。

from androidproject.

getActivity avatar getActivity commented on May 18, 2024

Leaks 本身也存在误报,但 Bug 会随着更新而越来越少的,所以要以最新版本为主。

from androidproject.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.