我一直在研究基于android-UniversalMusicPlayer样本的音乐播放器应用。我已经安装了LeakCanary来检测内存泄漏问题,并发现确实存在内存泄漏问题。请注意,除了添加内存泄漏检测之外,我没有进行任何更改。
有关详细信息,请参阅以下信息:
In com.example.android.uamp:1.1:2.
com.example.android.uamp.ui.FullScreenPlayerActivity has leaked:
GC ROOT static android.os.UserManager.sInstance
references android.os.UserManager.mContext
references android.app.ContextImpl.mOuterContext
references com.example.android.uamp.MusicService.mConnections
references android.support.v4.util.ArrayMap.mArray
references array java.lang.Object[].[2]
references android.os.Handler$MessengerImpl.this$0
references android.support.v4.media.MediaBrowserCompat$CallbackHandler.mCallbackImpl
references android.support.v4.media.MediaBrowserCompat$MediaBrowserImplApi23.mBrowserObj
references android.media.browse.MediaBrowser.mContext
leaks com.example.android.uamp.ui.FullScreenPlayerActivity instance
Retaining: 631 KB.
Reference Key: 21cd0054-506d-4c6f-94d1-47090c16fbb0
Device: LGE google Nexus 5 hammerhead
Android Version: 6.0.1 API: 23 LeakCanary: 1.4-beta1 02804f3
Durations: watch=5024ms, gc=121ms, heap dump=6019ms, analysis=40029ms
您还可以参考转储hprof文件的link。对我来说,这似乎是一个Android系统错误?在这种情况下,有解决方法吗?这对我的应用程序来说是一个致命的严重问题,因为我可以通过退出应用并在播放时再次进入应用程序来稳定地崩溃我的应用程序。任何帮助将不胜感激。