首先 创建一个内存泄漏的例子
AS如何调试内存泄漏
因为匿名内部类默认持有外部类的强引用,所以当跳转到第二个activity,本应该被销毁的MainActivity会被线程持有,而导致不会被GC回收。
然后通过AS提供的工具Android Profiler来找到内存泄漏的位置。
AS如何调试内存泄漏
AS如何调试内存泄漏
选中MEMORY,AS如何调试内存泄漏
点击垃圾桶旁边的堆栈收集。
AS如何调试内存泄漏
会得到这个时间段的所有数据信息。然后你会发现
AS如何调试内存泄漏
有两个实例,然后点击MainActivity
AS如何调试内存泄漏
就会看见具体的信息,因为线程持有了MainActiivty,所以无法释放,导致内存泄漏。

相关文章:

  • 2022-03-08
  • 2021-11-08
  • 2021-08-28
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-07
  • 2022-12-23
猜你喜欢
  • 2021-12-06
  • 2021-05-26
  • 2021-12-13
  • 2021-07-04
相关资源
相似解决方案