AdView causa pérdida de memoria

Estoy usando AdView y LeakCanary. Fragmento que aloja la llamada adView adView.destroy () en onDestroy, pero LeakCanary muestra que la actividad que hospeda este fragmento es filtrada por com.google.android.gms.common.api.aaai. El volcado de montón también muestra que hay pérdida de memoria. Cuando elimino AdView.loadAd () y no cargar anuncio en fragmento – no hay pérdida. ¿Alguna idea o sugerencia? Gracias.

2 Solutions collect form web for “AdView causa pérdida de memoria”

El mismo problema, AdView tiene una variable interna (referencia fuerte) que se aferra al contexto, que es mi Actividad, provocando una fuga de la instancia de Actividad.

Mi dependencia es com.google.android.gms:play-services-ads:8.3.0

Una solución consiste en proporcionar el Contexto de la Aplicación al crear la instancia de AdView.

 AdView adview = new AdView(getApplicationContext()); 

¿Puede probar lo siguiente:

  • Mueva su lógica en onDestroyView ()
  • Primero elimine su adView de su contenedor y luego llame a destroy (), es decir

     ViewParent parent = adView.getParent(); if (parent != null && parent instanceof ViewGroup) { ((ViewGroup) parent).removeView(adView); } adView.destroy(); adView = null; 
  • Mi aplicación Android consume demasiada memoria
  • ¿Qué herramientas y métodos de Android funcionan mejor para detectar fugas de memoria / recursos?
  • Esta clase Handler debe ser estática o pueden producirse fugas: handler final
  • Seguimiento de la memoria / fugas de la ventana en Android?
  • Pérdida de memoria con imágenes
  • Fuga de memoria debido a android.widget.BubblePopupHelper
  • Fuga de AdActivity en AdMob (SDK 7.0) para Android
  • ¿Cómo puedo saber cuánta memoria heap en un momento dado?
  • Error de memoria de mapa de bits - Android
  • Fuga de memoria de Android entre las actividades
  • ¿Puede un oyente de ViewTreeObserver no eliminado causar fugas de memoria?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.