HEADS UP: Android APK icons blurry and horrible!

I have noticed that my APK icons look blurry when displayed in the android device. I have checked in devices with different screen resolutions, up to 1920x1280 (nook HD+), and they don’t look as sharp as other icons. Just slightly but noticeable up close.

All my icons start at 1024x1024, then I resize to 512x512 and 144x144 and the rest of the resolutions. They are REALLY SHARP and CRISP.

I have tried both letting unity do the icon resizing and overriding with my own. The result is the same.

Now, I noticed that in the Icon section of the Player Settings, the 144x144 icon is displayed at the same size as the 96x96 icon. I first thought this was just a display thing but maybe there is more to it. Maybe the APK icons are being erroneously rendered to 96x96 by unity and then stretched out to 144x144 at some point.

Well I digged into the APK archive and found that indeed the icons look terrible, even when I override the Unity automatic resizing and provide my own. Here is what they look like:

They look nothing like the nice display we see in the editor, and not even close to the original art (which is manually dragged and dropped into the editor in the override mode).

A bit more digging… If you click select on the drop box for the icons you open the texture selection window which shows what the problem is: the icons are treated as textures and are converted to the nearest power of 2 resolution! Later they seem to be converted back to the resolution they are supposed to be (by a rather crude algorithm).

A Solution…
Bring all your properly resized icons into your assets folder and set them as GUI textures! Finally drag and drop the icons into the android override in Player Settings>Icon.

Thanks MD_Reptile. The trick was to import the icons as GUI textures so they are not converted to power of two (which happens even if you have it set to NONE in the Advanced texture inspector).