639
votes

I'm working with Android Studio 1.1 Preview 1. I noticed that when I create a new project I'm getting the following hierarchy:

Enter image description here

Mipmap folders for different DPIs, no more different DPIs drawable folders.

Should I put all my resources in the mipmap folders, or just the app icon?

1
Check out this statement from the google blog spot link below :- "... because they are used at resolutions different from the device’s current density. For example, an xxxhdpi app icon can be used on the launcher for an xxhdpi device." This tells that some devices explicitly tries to use icons of different density rather than what current device density specifies. eg. some manufacturer might like to use bigger icons in the home screen than launcher screen, or smaller icons for notifications than than usual specification. We must thus identify such resources and place them in mipmap folders.Rahul Thakur
The above comment is just an assumption on what I understand and might be wrong.Rahul Thakur
There is quite a lot more info over here --> mipmap drawables for iconsRichard Le Mesurier
Google should add a Lint quick-fix for putting app-icons there. I've made a post about it here: code.google.com/p/android/issues/detail?id=219500android developer

1 Answers

912
votes

The mipmap folders are for placing your app/launcher icons (which are shown on the homescreen) in only. Any other drawable assets you use should be placed in the relevant drawable folders as before.

According to this Google blogpost:

It’s best practice to place your app icons in mipmap- folders (not the drawable- folders) because they are used at resolutions different from the device’s current density.

When referencing the mipmap- folders ensure you are using the following reference:

android:icon="@mipmap/ic_launcher"

The reason they use a different density is that some launchers actually display the icons larger than they were intended. Because of this, they use the next size up.