App icon in B4Android - what are your recommendations (size, format etc...)?

bsnqt

Active Member
Licensed User
Longtime User
All

Sorry if I missed or overlooked some thing but I spend a whole day today to dig and look for any recommendation for size (96x96, 72x72 or 64x64, 32x32 etc.) and format (png, jpg, ico...) of our Android application icon.

My app's icon is so ugly despites of my hard efforts with all the icon designer and editor... especially the icon in the notification area, it is so blurred...while other applications are so shiny and beautiful. In the internet, I can find a lot of recommendations but they are so many, so I finally got confused.

Any advice? Thanks in advance guys and sorry for my basic question.

Best

bsnqt
 
Last edited:

Inman

Well-Known Member
Licensed User
Longtime User
I provide icons in all prescribed sizes to make sure it looks good on all resolutions. At first I thought I only needed to include icon in one size - the biggest recommended size i.e. 96x96. That size is for devices in XHDPI resolution (1280x720 and above). The problem is when the app is installed on a lower resolution device (like 480x800), Android resizes this image and that results in jagged edges. So it is better to do the resizing ourselves with Photoshop and then include those icons, instead of making Android system do it.

As of now there are 4 resolutions and each have their own recommended icon sizes.

LDPI (240x320) - 36x36
MDPI (320x480) - 48x48
HDPI (480x800) - 72x72
XHDPI (720x1280 and above) - 96x96

That was for launcher icons. Now for notification icons, the recommended practice is to use half the size of the corresponding launcher icon. Therefore that will be like this.

LDPI - 18x18
MDPI - 24x24
HDPI - 36x36
XHDPI - 48x48

You can include all icons in the project. In your project's Objects\res folder, create a folder called drawable-ldpi and copy the icons for LDPI resolution into it. Similarly create other drawable- folders and copy their corresponding icons. And make sure you mark all those files and folders as read only (otherwise it will get deleted during compilation).

Now when you install the app on a device, the Android system will use the icons in the folder that corresponds to the device's screen resolution.
 
Upvote 0

mangojack

Expert
Licensed User
Longtime User
Thanks klaus .. nice info

Cheers mj
 
Upvote 0

bsnqt

Active Member
Licensed User
Longtime User
LDPI - 18x18
MDPI - 24x24
HDPI - 36x36
XHDPI - 48x48

You can include all icons in the project. In your project's Objects\res folder, create a folder called drawable-ldpi and copy the icons for LDPI resolution into it. Similarly create other drawable- folders and copy their corresponding icons. And make sure you mark all those files and folders as read only (otherwise it will get deleted during compilation).

It is very important, and I did not know it before :BangHead:. Thank you very much, let me try it again. That may be the reason why I have used 96x96 and in the notification area and my icon is oversized...

Another thing is the format, I used the .png rather than .ico - what do you thing better? or what is recommended?

Lastly when I resize my png (big size) to small size, the icon will "lose" their details and become blurred, even when I worked with Photoshop... What is your experience with that?

Once again thanks.

Best

bsnqt
 
Upvote 0

Inman

Well-Known Member
Licensed User
Longtime User
I believe Android SDK supports only PNG and JPG for graphics. At any case PNG is the better format. So always use it.

As for loss of details, I am a bad graphic designer myself. My icons are mostly plain. Perhaps that is why I have never noticed the loss of details as there isn't much of a detail in the first place.
 
Upvote 0

bsnqt

Active Member
Licensed User
Longtime User
Guys thanks a lot, your response is so quick.

Appreciate your sharing of experience and advice.

Best
 
Upvote 0

bsnqt

Active Member
Licensed User
Longtime User
@innman:

I followed your advice, but don't know how to put 2 files in the same folder:

If I understand you correctly, I should put 2 .png files 92x92 (for launcher) and 48x48 (for notification) together in one folder, which is \drawable-xhdpi, and so on with other folders. Totally I used 8 files, i.e. 2 files per each folder.

(As I have to put 2 files in one folder so I have to rename their names to 2 different ones, for example "92x92.png" and "48x48.png" --> is it allowed or we have to keep the name "icon.png"?)

Result: when I compiled the system removed all my files - as you mentioned - and in the folder \res\ now I don't see the folders ldpi, mdpi...anymore.

However, in my running application's icon now is the defaut icon that is from system (attached), not the one like in my input files???

It caused me headache the whole night, as I have to admit that I am not very strong in design :(

Any advice, please. Thank you

Best

bsnqt
 

Attachments

  • icon.png
    icon.png
    4 KB · Views: 1,018
Upvote 0

mangojack

Expert
Licensed User
Longtime User
(As I have to put 2 files in one folder so I have to rename their names to 2 different ones, for example "92x92.png" and "48x48.png" --> is it allowed or we have to keep the name "icon.png"?)

That is OK .. call them anything u like

Result: when I compiled the system removed all my files - as you mentioned - and in the folder \res\ now I don't see the folders ldpi, mdpi...anymore.

Did you follow Inmans advice ...

"And make sure you mark all those files and folders as read only (otherwise it will get deleted during compilation). "

Cheers mj
 
Last edited:
Upvote 0

Inman

Well-Known Member
Licensed User
Longtime User
@bsnqt

First of all the size for XHDPI is 96x96 and not 92x92. As for the filenames, I normally use icon.png for launcher icon and notify.png for notification icon. There should be 8 PNG files in total, 2 in each folder.

And yes like mangojack reminded, you need to mark all those files and folders as read only.
 
Upvote 0

bsnqt

Active Member
Licensed User
Longtime User
Ok mj and innman,

Thanks :) Let me try again... and will let you know if it is ok.

Appreciate your quick help on this :)

Best

bsnqt
 
Upvote 0

bsnqt

Active Member
Licensed User
Longtime User
@Inman & mangojack:

I am hopeless, tried so many times and now I have to give up.

I cannot make it work. B4A or deleted my icons, or gives me the default icon, or says that we cannot name the folders with "-" (like drawable-hdpi), please see attached.

I did everything that you advised me to do, but unfortunately I could not make it work.

Do we need to change something in the manifest editor???

:BangHead: :BangHead: :BangHead:

Thanks
 

Attachments

  • Capture.PNG
    Capture.PNG
    32.8 KB · Views: 639
Upvote 0

Inman

Well-Known Member
Licensed User
Longtime User
Did you make those drawable folders and files read only?

And try using the name icon.png for all launcher icon files of all sizes.
 
Upvote 0

bsnqt

Active Member
Licensed User
Longtime User
Did you make those drawable folders and files read only?

And try using the name icon.png for all launcher icon files of all sizes.

Hi Inman,

It works now :D

The problem is you have to rename them to same name "icon.png" for all sizes, in all folders.

It took me 03 days to make it work (you said I can use any name for the png files Ggggrrrr.... :D). But I really don't understand, I searched around in other forums, they said they can also use different name :(

Thanks for your hint! Appreciate.

Best

bsnqt
 
Upvote 0

Dave O

Well-Known Member
Licensed User
Longtime User
For the application icon (and the launcher icon), if you're not graphically inclined, you can also create simple ones using Android Asset Studio (Android Asset Studio).

I just used it for my first app, and it's good enough (and free). One less thing to spend too much time on. ;^)
 
Upvote 0
Top