2

I am working on a library app that allows the user sort/organize all kind of stuff. The app offers about 150 icons the user can use to categories the entries. Since this is my first Android app I am not sure what is the best way to provide these icons:

So far I only created xxxhdpi versions, stored them in drawable-xxxhdpi and everything is working fine. I am using Nexus 5 and a Kindle Fire as test devices which show no problem. Also when using the simulator to test lower resolutions everything seems fine.

The app should support Android 4.0 up. The more version of the icons are integrated in the app, the bigger the app gets.

The docu says that one should provide different sizes so avoid scaling by the system. But is there any reason to provide other version of the icons (hdpi, mdpi, etc.) as well if the down-scaling seems to be working just fine?

  • Could it have an impact on performance if the system has to scale the icons instead of using pre-scaled versions?
  • Is the test with the simulator reliable or could it be, that on real devices the down-scaled version look bad?

  • I am aware, that the xxxhdpi format is quite new and almost no devices will use this actual size. Would it be better to use another size (e.g. xhdpi) instead?

Andrei Herford
  • 17,570
  • 19
  • 91
  • 225
  • This seems to be loosely related to this question: http://stackoverflow.com/q/5998865/450534. If the app's size is a constraint, I personally prefer using larger bucket sizes (either of `xhdpi` or `xxhdpi`) and let the devices scale down. Certainly a lot better than devices having to scale up resulting in image distortions. Although, I haven't come across this constraint yet, considering the number of _Phablets_ being launched, I would most probably go with `xxhdpi`. – Siddharth Lele Jun 20 '14 at 07:19
  • Look at my ans : http://stackoverflow.com/questions/19875158/android-background-image-size-in-pixel/19875228#19875228 – Haresh Chhelana Jun 20 '14 at 07:20

1 Answers1

0

It does have an impact on performance, but you should not be bothered about it that much. What will hurt more is the greater size due to multiple definitions.

Here is what I would suggest:

I suggest you use a combination of both for the most efficient results

harveyslash
  • 5,906
  • 12
  • 58
  • 111
  • Thanks! Using 9Path images is not an option here since this is about "complex" icons (e.g. a car or a house). Using multiple APKs could an option. But the the question remains: It is necessary / has it an advantage to provide sizes/resolutions other than (x)xxhdpi if the down-scale quality is good and the performance is not really a factor? – Andrei Herford Jun 20 '14 at 07:28
  • I am not sure why it happens, but in my experience, I have noticed many times that lots of images look really bad when they are scaled down. Also, many fine lines might disappear. I also had issues with scaling down a HUGE pic in an imageView(appCrash). so you might not want to take those risks. what i could suggest is you make 2 or 3 definitions of resources. something like, one for lowest dpi, and one for xhdi, and then let android decide – harveyslash Jun 20 '14 at 07:32