Why my android app is consuming too much memory?
<p>The situation is this:
I have an Activity which has one Toolbar, one Tablayout and one View Pager (that will contains 5 fragments)</p>

<p>Inside the first fragment I have a layout that <strong>will contains one default fragment which will have a Recycler View</strong> with two columns. Every element on this have an image downloaded from the Internet (with Glide and saving on cache) and when a user clicks on the holder (one element of the list), will change this default fragment on the 'layout container' to another one that will have a new Recycler View with images downloaded from the Internet using Glide. Similar to Instagram search page.</p>

<p>I thought Glide was the problem, but I comented all code and when I run the app on emulator it consumes 89 MB of RAM more o less.</p>

<p><strong>EXTRA INFORMATION</strong></p>

<ul>
<li>Every element on the RView inside any fragment is created from downloading an JSONArray using Volley, I put the request inside MySingleton queue and define the context as getContext() (should I use getActivity().ApplicationContext() instead of getContext()when the code is from fragment? )</li>
</ul>

<p>(Inside the fragment that is inside the view pager which is inside an Activity)</p>

<pre><code>MySingleton.getInstance(getContext()).addToRequestQueue(req);
</code></pre>

<p>Then it downloads the Picture URL and charge it on the view using Glide.</p>

<pre><code>if(holder.publication.getPicture() != null ){
        Glide.with(holder.ctx).load(holder.publication.getPicture()).diskCacheStrategy(DiskCacheStrategy.ALL).centerCrop().into(holder.picture_imgView);
    }
</code></pre>

<ul>
<li><p>I'm not using static variables</p></li>
<li><p>Moreover, I remove all animations from Recycler View elements and still being slow.</p></li>
<li><p>I use the Android monitor and the 'Jump Java Heap' option to see how it is managing memory and the major number is on Byte[] (I don't understand using this tool)</p></li>
</ul>

<p>Thanks a lot!</p>

<p><strong>UPDATE</strong>
On my log, I always get this: </p>

<pre><code>W/ViewRootImpl: Dropping event due to no window focus: KeyEvent { action=ACTION_DOWN, keyCode=KEYCODE_BACK, scanCode=0, metaState=0, flags=0xc8, repeatCount=1, eventTime=18009881, downTime=18009352, deviceId=-1, source=0x101 }

I/Choreographer: Skipped 98 frames!  The application may be doing too much work on its main thread.
</code></pre>