我的应用程序泄漏了我的drawable文件夹中没有的随机形状的位图

3 android memory-leaks

我有一个奇怪的内存泄漏问题,我的应用程序不断泄漏Bitmap对象和其他相关的对象,如VectorDrawables,AnimationDrawables

我有通过Eclipse Memory Analyzer和Gimp能够恢复泄漏的Bitmap物体,发现它们是随机形状的恒星,正方形或圆形.我的res/drawable文件夹中没有这些形状.

他们来自哪里,为什么他们泄漏这么多?这个泄漏发生在我Samsung Galaxy S7 - Android 7.0和模拟器上Android 7.0和6.0.但是当我在Huawai跑步上运行我的应用程序时,没有泄漏Android 4.4.4

这是我的hprof的链接.文件,如果有人会仔细看看:https://www.dropbox.com/s/e1ry3ny5eb66xk8/out3%20-%20Kopi.hprof?dl=0

Memory Analyzer中Dominator Tree的屏幕截图

它们带有黄色标记,例如这张照片下方的星星

在此输入图像描述

在我的泄漏中找到的星星位图

在此输入图像描述

此外,我的堆栈跟踪一直无休止地吐出这些线

 03-21 17:00:08.415 16747-16747/muddzdev.shoppist I/InputMethodManager: [IMM] startInputInner - mService.startInputOrWindowGainedFocus
    03-21 17:00:08.428 16747-16760/muddzdev.shoppist D/InputTransport: Input channel constructed: fd=98
    03-21 17:00:13.315 16747-16886/muddzdev.shoppist E/OpenGLRenderer:   saveGfxinfoFileDisabled enabled
    03-21 17:00:13.632 16747-16886/muddzdev.shoppist E/OpenGLRenderer:   saveGfxinfoFileDisabled enabled
    03-21 17:00:13.914 16747-16886/muddzdev.shoppist E/OpenGLRenderer:   saveGfxinfoFileDisabled enabled
    03-21 17:00:14.257 16747-16886/muddzdev.shoppist E/OpenGLRenderer:   saveGfxinfoFileDisabled enabled
    03-21 17:00:14.592 16747-16886/muddzdev.shoppist E/OpenGLRenderer:   saveGfxinfoFileDisabled enabled
    03-21 17:00:14.933 16747-16886/muddzdev.shoppist E/OpenGLRenderer:   saveGfxinfoFileDisabled enabled
    03-21 17:00:15.299 16747-16886/muddzdev.shoppist E/OpenGLRenderer:   saveGfxinfoFileDisabled enabled
Run Code Online (Sandbox Code Playgroud)

小智 14

更新到API 24后,我遇到了与S7相同的问题,我可以通过在Android Studio中禁用GPU监视器来删除此错误.看起来它肯定是一个Android工作室问题,也许只有S7.

  • 在Android Studio中禁用GPU监视器解决了我的问题 (4认同)