Подтвердить что ты не робот

Утечка памяти, вызванная java.lang.ref.FinalizerReference

при запуске com.android.gallery3d и нажмите клавишу в течение примерно 2000 раз, я получил исключение из java.lang.OutOfMemoryError. Сброс кучи com.android.gallery3d, который находится в android 4.0.4. Используйте MAT для анализа и поиска java.lang.ref.FinalizerReference был вложен. Что может вызвать появление этого вложенного вызова?

android.app.ContextImpl @ 0x418f8c98
android.media.AudioManager @ 0x419495c8
android.media.AudioManager$1 @ 0x41949688
java.lang.ref.FinalizerReference @ 0x419496a8
java.lang.ref.FinalizerReference @ 0x419496e8
java.lang.ref.FinalizerReference @ 0x41949800
java.lang.ref.FinalizerReference @ 0x41949848
java.lang.ref.FinalizerReference @ 0x41949890
java.lang.ref.FinalizerReference @ 0x419498d8
java.lang.ref.FinalizerReference @ 0x41949920
java.lang.ref.FinalizerReference @ 0x419499b0
java.lang.ref.FinalizerReference @ 0x419499f8
java.lang.ref.FinalizerReference @ 0x41949a40
java.lang.ref.FinalizerReference @ 0x41949a88
java.lang.ref.FinalizerReference @ 0x41949ad0
java.lang.ref.FinalizerReference @ 0x4194a5a8
java.lang.ref.FinalizerReference @ 0x4194af48
java.lang.ref.FinalizerReference @ 0x4194b878
4b9b3361

Ответ 1

У меня были эти симптомы в моем приложении, и это оказалось связано с утечкой памяти. Я использовал для регистрации обратного вызова из одного действия на объект singleton. Уничтожение этой активности было приостановлено по сравнению с обратным вызовом.

Ответ 2

В моем случае я создавал новый (хотя и маленький) объект в переопределенном методе onDraw моего пользовательского SurfaceView.