┬───
│ 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 (Countly$SingletonHolder↓ is not leaking and A ClassLoader is
│ never leaking)
│ ↓ ClassLoader.runtimeInternalObjects
├─ java.lang.Object[] array
│ Leaking: NO (Countly$SingletonHolder↓ is not leaking)
│ ↓ Object[1449]
├─ ly.count.android.sdk.Countly$SingletonHolder class
│ Leaking: NO (a class is never leaking)
│ ↓ static Countly$SingletonHolder.instance
│ ~~~~~~~~
├─ ly.count.android.sdk.Countly instance
│ Leaking: UNKNOWN
│ Retaining 178,9 kB in 2039 objects
│ context_ instance of com.sample.App
│ ↓ Countly.moduleContent
│ ~~~~~~~~~~~~~
├─ ly.count.android.sdk.ModuleContent instance
│ Leaking: UNKNOWN
│ Retaining 127 B in 3 objects
│ currentActivity instance of leakcanary.internal.activity.LeakActivity with
│ mDestroyed = true
│ ↓ ModuleContent.currentActivity
│ ~~~~~~~~~~~~~~~
╰→ leakcanary.internal.activity.LeakActivity instance
Leaking: YES (ObjectWatcher was watching this because leakcanary.internal.
activity.LeakActivity received Activity#onDestroy() callback and
Activity#mDestroyed is true)
Context
Simple single activity app
Action
Rotation the screen
Issue
Leak Canary alert