I decided it was high time I learned how to use Leak Canary to detect Leaks within my apps, and as I always do, I tried to implement it in my project to really understand how to
I was able to fix this by overriding RecyclerView. It happens because RecyclerView never unregisters itself from AdapterDataObservable.
@Override protected void onDetachedFromWindow() { super.onDetachedFromWindow(); if (getAdapter() != null) { setAdapter(null); } }