yandexmobile / yandex-ads-sdk-android

Other
79 stars 22 forks source link

NativeAdEventListener leak [v 7.4.0] #280

Open nao-ni opened 2 weeks ago

nao-ni commented 2 weeks ago

Не удаляется NativeAdEventListener вместе с удалением NativeAd, к которому он привязан. Лог из вашего сэмпла

` ┬─── │ GC Root: Thread object │ ├─ android.net.ConnectivityThread instance │ Leaking: NO (PathClassLoader↓ is not leaking) │ Thread name: 'ConnectivityThread' │ ↓ Thread.contextClassLoader ├─ dalvik.system.PathClassLoader instance │ Leaking: NO (pz0↓ is not leaking and A ClassLoader is never leaking) │ ↓ ClassLoader.runtimeInternalObjects ├─ java.lang.Object[] array │ Leaking: NO (pz0↓ is not leaking) │ ↓ Object[565] ├─ com.yandex.mobile.ads.impl.pz0 class │ Leaking: NO (a class is never leaking) │ ↓ static pz0.c │ ~ ├─ com.yandex.mobile.ads.impl.pz0 instance │ Leaking: UNKNOWN │ Retaining 651,2 kB in 7744 objects │ ↓ pz0.a │ ~ ├─ java.util.WeakHashMap instance │ Leaking: UNKNOWN │ Retaining 651,2 kB in 7743 objects │ ↓ WeakHashMap.table │ ~ ├─ java.util.WeakHashMap$Entry[] array │ Leaking: UNKNOWN │ Retaining 651,1 kB in 7739 objects │ ↓ WeakHashMap$Entry[0] │ ~~~ ├─ java.util.WeakHashMap$Entry instance │ Leaking: UNKNOWN │ Retaining 651,0 kB in 7738 objects │ ↓ WeakHashMap$Entry.value │ ~ ├─ com.yandex.mobile.ads.impl.cx0 instance │ Leaking: UNKNOWN │ Retaining 651,0 kB in 7737 objects │ a instance of com.yandex.ads.sample.Application │ ↓ h11.C │ ~ ├─ com.yandex.mobile.ads.impl.yx0 instance │ Leaking: UNKNOWN │ Retaining 634,5 kB in 7115 objects │ ↓ yx0.a │ ~ ├─ com.yandex.mobile.ads.impl.ay0 instance │ Leaking: UNKNOWN │ Retaining 634,2 kB in 7105 objects │ ↓ ay0.b │ ~ ├─ com.yandex.mobile.ads.impl.ha2 instance │ Leaking: UNKNOWN │ Retaining 634,2 kB in 7103 objects │ ↓ ha2.a │ ~ ├─ com.yandex.ads.sample.adunits.CustomNativeAdActivity$NativeAdEventLogger instance │ Leaking: UNKNOWN │ Retaining 634,2 kB in 7102 objects │ this$0 instance of com.yandex.ads.sample.adunits.CustomNativeAdActivity with mDestroyed = true │ ↓ CustomNativeAdActivity$NativeAdEventLogger.this$0 │ ~~ ╰→ com.yandex.ads.sample.adunits.CustomNativeAdActivity instance ​ Leaking: YES (ObjectWatcher was watching this because com.yandex.ads.sample.adunits.CustomNativeAdActivity ​ received Activity#onDestroy() callback and Activity#mDestroyed is true) ​ Retaining 634,2 kB in 7101 objects ​ key = 84580705-36fb-41f5-9ee1-363c27ee579a ​ watchDurationMillis = 5636 ​ retainedDurationMillis = 636 ​ mApplication instance of com.yandex.ads.sample.Application ​ mBase instance of androidx.appcompat.view.ContextThemeWrapper

METADATA

Build.VERSION.SDK_INT: 33 Build.MANUFACTURER: Google LeakCanary version: 2.12 App process name: com.yandex.ads.mobile Class count: 30077 Instance count: 221822 Primitive array count: 155901 Object array count: 32326 Thread count: 44 Heap total bytes: 30184758 Bitmap count: 10 Bitmap total bytes: 6332874 Large bitmap count: 0 Large bitmap total bytes: 0 Db 1: open /data/user/0/com.yandex.ads.mobile/databases/monetization_ads_exoplayer_internal.db Db 2: open /data/user/0/com.yandex.ads.mobile/databases/monetization_ads_exoplayer_internal.db Count of retained yet cleared: 5 KeyedWeakReference instances Stats: LruCache[maxSize=3000,hits=118068,misses=212087,hitRate=35%] RandomAccess[bytes=10611578,reads=212087,travel=103822983158,range=36544507,size=44951612] Analysis duration: 20956 ms

`

mobile-ads-github commented 2 weeks ago

Спасибо за Ваше обращение, для разбора создана задача с номером PCODESUP-3700. Мы ознакомимся и вернемся с ответом в течение 2 дней, возможно запросим дополнительную информацию.

Thank you for your message, a task with the number PCODESUP-3700 has been created for analysis. We will get acquainted and return with the answer within 2 days, we may request additional information.