Définir l'icône pour l'application Android

556

Comment puis-je définir une icône pour mon application Android?

VIJESH
la source
13
REMARQUE, pour 2016, sélectionnez simplement "New Image Asset" (trouvez-le généralement via: cliquez avec le bouton droit sur, par exemple, l'élément "mipmap" res), puis utilisez simplement l'assistant. Commencez avec une grande image et il la met à l'échelle pour vous. Voir la réponse de @Justice ci-dessous.
Fattie
2
Fattie
Je suis une suggestion (WebApp) https://android-material-icon-generator.bitdroid.de
NovaYear

Réponses:

689

Si vous souhaitez que votre application soit disponible sur une large gamme d'appareils, vous devez placer l'icône de votre application dans les différents res/drawable...dossiers fournis. Dans chacun de ces dossiers, vous devez inclure une icône de taille 48dp:

  • drawable-ldpi (120 dpi, écran basse densité) - 36 px x 36 px
  • drawable-mdpi (160 dpi, écran de densité moyenne) - 48 px x 48 px
  • drawable-hdpi (240 dpi, écran haute densité) - 72 px x 72 px
  • drawable-xhdpi (320 dpi, écran à très haute densité) - 96 px x 96 px
  • drawable-xxhdpi (480 dpi, écran à très haute densité) - 144 px x 144 px
  • drawable-xxxhdpi (640 dpi, écran extra-extra-extra-haute densité) - 192px x 192px

Vous pouvez alors définir l'icône dans votre AndroidManifest.xmlfichier comme telle:

<application android:icon="@drawable/icon_name" android:label="@string/app_name" >
.... 
</application> 
Liam George Betsworth
la source
3
BTW vous pouvez utiliser Inkscape pour générer des png à partir de SVG. Avec quelque chose comme:inkscape %logo_file% -e %output_file% %WIDTH% %HEIGHT% --export-background-opacity=0.0
Nux
29
Vous pouvez utiliser une seule grande icône, mais vous n'aurez aucun contrôle sur la façon dont l'algorithme change son apparence finale. Cette question a été répondue ici: stackoverflow.com/questions/6695413/…
Liam George Betsworth
5
Quelle devrait être l'extension? .png? .ico?
CodyBugstein
10
imaginez comment 512 x 512 sera affiché en 36 x 36? Le programme choisira certains pixels de 512 x 512, peut-être les mélangera et les affichera en 36 x 36. Il y aura certainement une erreur de quantification, par exemple, en.wikipedia.org/wiki/Aliasing . Donc, bien sûr, l'image 36 x 36 ne sera pas parfaite en pixels.
Helin Wang
7
@aleb developer.android.com/design/style/iconography.html - "Donc, pour créer une icône pour différentes densités, vous devez suivre le rapport d'échelle 2: 3: 4: 6: 8 entre les cinq densités primaires (moyenne, haute, x-haute, xx-haute et xxx-haute respectivement). Par exemple, considérez que la taille d'une icône de lanceur est spécifiée à 48 x 48 dp. Cela signifie que l'actif de base (MDPI) est 48 x 48 px, et le haut -l'actif de densité (HDPI) devrait être 1,5 fois la ligne de base à 72 x 72 px, et l'actif à densité x élevée (XHDPI) devrait être 2 fois la ligne de base à 96 x 96 px, etc. "
Liam George Betsworth du
223

Ajoutez une icône de lancement d'application avec dimensionnement automatique.

(Studio Android)

Allez dans le menu Fichier * → NouveauRessources d'image → sélectionnez l'icône du lanceur → choisissez le fichier d'image.

Il sera automatiquement redimensionné.

Terminé!

Arshid KV
la source
7
je ne comprends pas pourquoi ce n'est pas la meilleure réponse. quelqu'un peut-il expliquer? tous les dossiers et images à l'échelle sont créés pour moi
Mark Ch
Cela explique comment créer des dossiers et des images à l'échelle. Il n'explique pas comment définir l'un d'eux comme icône de l'application.
Paul McCarthy
1
Désolé, mon commentaire explique pourquoi je pense que ce n'est pas la meilleure réponse. C'est une très bonne réponse et m'a aidé à résoudre mon problème d'icône.
Paul McCarthy
3
Je comprends qu'il se redimensionnera automatiquement, mais quelle taille fournissez-vous habituellement? 512x512?
aresz
5
Dans Android Studio d'aujourd'hui, j'ai trouvé ce menu en cliquant avec le bouton droit dans le volet de navigation sur la gauche.
Antonis Christofides
199

J'ai trouvé cet outil très utile.

  1. Téléchargez une image.
  2. Téléchargez un zip.
  3. Extrayez dans votre projet.

Terminé

http://romannurik.github.io/AndroidAssetStudio/

Blowsie
la source
5
C'est un moyen super simple de le faire! Mes étapes étaient: 1) Créer une image 144x144 à partir du fichier illustrateur 2) Télécharger le fichier 3) Jouer avec les paramètres sur le site Web pour le rembourrage / etc 4) Copier le fichier "res" du .zip du site, le coller dans IntelliJ et sélectionner "Écraser les fichiers "
pfrank
Les images entrent-elles dans mitmpa ou drawables?
Ruchir Baronia
Je ne comprends pas quoi faire avec ce zip: c
Bipa
Cela ne donne rienldpi
Vencovsky
58

C'est simple.

Maintenant, allez simplement dans le menu FichierNouveauImage Asset . Cela ouvrira une nouvelle boîte de dialogue et s'assurera que les icônes du lanceur sont sélectionnées (ce qui est par défaut), puis accédez au répertoire de votre icône (il ne doit pas nécessairement se trouver dans les ressources du projet), puis une fois sélectionné, assurez-vous que les autres les paramètres sont à votre goût et cliquez sur terminé.

Maintenant, toutes les résolutions sont enregistrées dans leurs dossiers respectifs, et vous n'avez plus à vous soucier de les copier vous-même ou d'utiliser des outils, etc.

Entrez la description de l'image ici

N'oubliez pas "Forme - aucune" pour un fond transparent.

Ben Sefton
la source
1
Pour les nouvelles versions d'Android Studio, c'est la meilleure réponse, +1 de ma part
Angry 84
1
Mis à jour pour 2018, devrait être le premier
Ignacio Ara
C'est la meilleure réponse, car Android Studio générera tous les bons actifs avec les bons noms. Vous pouvez commencer avec un seul élément d'image plutôt que d'avoir à générer manuellement différentes tailles d'actifs, puis essayer de déterminer où ils vont dans la dernière version d'Android Studio.
Fuad Kamal
38

Mettez vos images dans un mipmapdossier et définissez-les dans un fichier manifeste ... comme

 <application android:icon="@mipmap/icon" android:label="@string/app_name" >
 .... 
 </application>  

Répertoire des dossiers d'application:

entrez la description de l'image ici

Taille et format de l'icône: entrez la description de l'image ici

Niranj Patel
la source
32

Placez vos images dans le dossier drawables sous l'un des trois et définissez-le comme ceci.

Code

<application android:icon="@drawable/your_icon" >
.... 
</application>  
Sunil Pandey
la source
21

Faites un clic droit sur votre projet, accédez à Nouveau> Autre> Android> Jeu d'icônes Android

Suivez ensuite les instructions de l'assistant

labatyo
la source
Cette option n'existe pas sur Android Studio.
The Berga
3
J'ai dû cliquer sur un fichier du projet pour agrandir le fil d'Ariane en haut. Ensuite, différentes options étaient disponibles lors d'un clic droit sur le projet. Nouveau> Image Assets
craigq
14

1-Créez votre icône dans Photoshop ou Coreldraw par taille 256 * 256

notez que vous utilisez le format de fichier PNG si vous voulez avoir une icône transparente

2-Téléchargez votre icône dans https://romannurik.github.io/AndroidAssetStudio/icons-launcher.html

3-Définissez votre réglage sur ce site entrez la description de l'image ici

4-Téléchargez le fichier zip créé automatiquement par la page Web en cliquant sur le bouton de téléchargement entrez la description de l'image ici

5-Extraire le fichier zip et copier le dossier res dans votre bibliothèque de projet entrez la description de l'image ici

notez que le dossier res contient toutes les icônes de taille

6-enfin, vous devez définir le manifeste pour utiliser l'icône

<application android:icon="@drawable/your_icon" >
.... 
</application>
Milaaaad
la source
12

Vous pouvez simplement installer un plugin d'icônes Martial pour studio Android, son nom est s'il vous plaît vérifier l'URL du plugin Material Design Icon Generator et vérifier ce GIF pour plus de détails:

Plugin d'icônes de studio Android

C'est principalement pour créer les icônes avec les tailles requises, et il sera situé directement dans ses dossiers.

Mohamed
la source
7

Vous pouvez commencer par lire la documentation.

Voici un lien:

Comment changer le logo du lanceur d'une application dans Android Studio?

trgraglia
la source
1
Les deux autres réponses se trouvent dans le lien fourni. J'ai fourni un lien car j'espère que vous verrez la bonne documentation et que vous commencerez par là. La réponse qui vous dit d'utiliser l'un des trois dossiers est correcte mais également erronée. Vous devez fournir trois tailles différentes pour chacune des densités d'écran.
trgraglia
developer.android.com/guide/practices/ui_guidelines/… est un autre lien utile qui en dit plus sur les icônes.
Louis Sayers
actung: lien brisé
Stefano Giacone
11
Voté car cela n'est pas utile. "Vous pouvez commencer par ..." est également agressif inutilement passif.
daspianist
6
  1. Choisir l'image de l'icône copier cette photo
  2. Collez-le dans le res/drawabledossier de votre projet
  3. Ouvrir le fichier manifeste et définir

  4. Exécuter de programme

Pratik Popat
la source
6

Vous devez suivre des étapes comme:

  • Vous verrez vos icônes par défaut ic_launcher.pngcomme:

entrez la description de l'image ici

  • Vous devez changer toutes les images qui se trouvent dans les dossiers mipmap-xxxx . Vous devez d'abord créer votre propre logo ou ramasser l'image que vous souhaitez placer comme icône du lanceur et la télécharger ici Android Asset Studio - Générateur d' icônes - Icônes du lanceur , vous obtiendrez également l'ensemble de mipmap-xxxx et web_icon lien.

entrez la description de l'image ici

  • Maintenant, vous devez copier tous les dossiers qui se trouvent à côté du dossier res,

entrez la description de l'image ici

  • Maintenant, allez dans Android Studio Project -> Faites un clic droit sur le dossier res -> Coller . Il vous demandera que le fichier 'ic_launcher.png' existe déjà dans le répertoire, vous pouvez appuyer sur Tout écraser. Il va coller / remplacer les images dans le dossier respectif.

Vous pouvez maintenant exécuter et voir l'icône de votre application avec une nouvelle image.

Happy Coding :) :)

Pratik Butani
la source
Je préfère votre réponse ... Thx pour de l'aide
Jacky Chong
5

Si vous avez une icône SVG, vous pouvez utiliser ce script pour générer votre jeu d'icônes Android.

homme de glace
la source
3

Un peu vieux, mais pour une utilisation future:

Open Android Studio -> app/src/main/res -> Right Click -> Image Asset
Pavel 'PK' Kaminsky
la source
2

Définir l'icône pour l'application Android

<application android:icon="drawable resource">
.... 
</application> 

https://developer.android.com/guide/topics/manifest/application-element.html


Si votre application est disponible sur une large gamme d'appareils

Vous devez créer des icônes distinctes pour toutes les densités d'écran généralisées, y compris les écrans à faible, moyenne, haute et extra-haute densité. Cela garantit que vos icônes s'afficheront correctement sur la gamme d'appareils sur lesquels votre application peut être installée ...

entrez la description de l'image ici


Taille et format

Les icônes du lanceur doivent être des fichiers PNG 32 bits avec un canal alpha pour la transparence. Les dimensions de l'icône du lanceur fini correspondant à une densité d'écran généralisée donnée sont indiquées dans le tableau ci-dessous.

entrez la description de l'image ici


Placer l'icône dans un mipmap ou un dossier dessinable

android:icon="@drawable/icon_name" ou android:icon="@mipmap/icon_name"

developer.android.com/guide dit ,

Cet attribut doit être défini comme référence à une ressource dessinable contenant l'image (par exemple "@ dessinable / icône").

à propos des icônes de lancement android-developers.googleblog.com dit,

Il est recommandé de placer les icônes de votre application dans des dossiers mipmap (et non dans les dossiers dessinables) car ils sont utilisés à des résolutions différentes de la densité actuelle de l'appareil. Par exemple, une icône d'application xxxhdpi peut être utilisée sur le lanceur pour un périphérique xxhdpi.

Dianne Hackborn de Google (Android Framework) dit :

Si vous créez différentes versions de votre application pour des densités différentes, vous devez connaître le répertoire de ressources "mipmap". C'est exactement comme les ressources "dessinables", sauf qu'il ne participe pas à la suppression de densité lors de la création des différentes cibles apk.

Pour les icônes du lanceur, le fichier AndroidManifest.xml doit référencer le mipmap / l'emplacement

<application android:name="ApplicationTitle"
         android:label="@string/app_label"
         android:icon="@mipmap/ic_launcher" >

Un peu plus en citant cela

  1. Vous voulez charger une image pour la densité de votre appareil et vous allez l'utiliser "telle quelle", sans changer sa taille réelle . Dans ce cas, vous devez travailler avec des drawables et Android vous donnera la meilleure image.

  2. Vous voulez charger une image pour la densité de votre appareil, mais cette image va être agrandie ou réduite . Par exemple, cela est nécessaire lorsque vous souhaitez afficher une icône de lanceur plus grande ou que vous avez une animation, ce qui augmente la taille de l'image. Dans de tels cas, pour garantir la meilleure qualité d'image, vous devez placer votre image dans le dossier mipmap . Ce que fera Android, c'est qu'il essaiera de récupérer l'image dans un compartiment de densité plus élevée au lieu de la mettre à l'échelle. Cela augmentera la netteté (qualité) de l'image.

Pour en savoir plus, vous pouvez lire les dossiers mipmap vs dessinables


Outils pour générer facilement des actifs

  1. Android Asset Studio par romannurik.github
  2. Android Asset Studio par jgilfelt.github
  3. Image Asset Studio (depuis Android Studio)
  4. Material Icon Generator.bitdroid.de
  5. Plugin générateur d'icône de conception de matériaux Android par github.com/konifar
  6. Un script pour générer des actifs Android à partir d'un fichier SVG

En savoir plus: https://developer.android.com/guide/practices/ui_guidelines/icon_design_launcher.html

Charu ක
la source
0

Goto File-> new-> ImageAsset.

À partir de leur, vous pouvez créer des ressources d'image pour votre icône.

Après cela , nous allons obtenir une image d'icône dans mipmap différents formats comme hdpi, mdpi, xhdpi, xxhdpi, xxxhdpi.

Maintenant, allez sur AndroidManifest.xml

<application android:icon="@mipmap/your_Icon"> ....</application>
Rushikesh
la source
0

Dans AndroidManifest, modifiez-les:

android:icon="@drawable/icon_name"
android:roundIcon="@drawable/icon_name"
Hamed Karami
la source