2011-01-23 17 views
9

Acabo de pasar muchas horas construyendo un ícono para una aplicación de Android en la que estoy trabajando, pero no logro que aparezca para la aplicación en el emulador.El ícono de la aplicación Android no aparece

lo he puesto en res/dibujable-IPAP, res/dibujable-MDPI, res/dibujable-LDPI en los respectivos tamaños como se define en http://developer.android.com/guide/practices/ui_guidelines/icon_design_launcher.html

El manifiesto contiene la línea:

<application android:icon="@drawable/icon" android:label="@string/app_name" android:debuggable="true"> 

¿Alguna idea de por qué no se muestra?

+0

¿Lo ha nombrado correctamente? Asumiendo que no cambiaste el manifiesto, el icono predeterminado se llama icon.png y es un ícono de Android. Simplemente reemplace este icono con el suyo y debería funcionar. – f20k

+0

y lo que aparece en su lugar? ¿Estás recibiendo algún error? – bigstones

+0

He resuelto este problema reiniciando mi dispositivo. :) – Allen

Respuesta

20
  1. Asegúrese de que el icono esté almacenado con el nombre icon.png en esas carpetas.
  2. Asegúrate de que Android tenga un recurso dibujable/ícono. Verifique esto al mirar su archivo gen/R.java y ver el ícono público final static int = 0x ... en la clase interna dibujable.
  3. Intenta limpiar la compilación de tu proyecto y desinstala cualquier versión existente de tu aplicación desde tu teléfono/emulador y luego vuelve a instalar la nueva versión.
+0

El ícono no se llamaba icon.png, y lo colocaba en el lugar equivocado (sin reemplazar los iconos predeterminados). ¡Gracias a todos! – Dan

+7

Debo añadir que no tiene que llamarse icon.png, pero el nombre debe coincidir con lo que elija en su línea de android: icon = "@ drawble/...". – Jems

+1

Me gustaría enfatizar parte del tercer paso "limpiar la compilación de tu proyecto": asegúrate de hacer clic en Proyecto/Limpiar ... y limpiar tu proyecto. ¡Esto lo hizo en mi caso! – Dunken

0

Si ha intentado todo en la respuesta de Jems y aún no aparece, intente reiniciar el dispositivo/emulador. Debería aparecer entonces.

1

Si está ejecutando en Android 5.0, sólo tiene que añadir estas líneas en el método onCreate, dentro MainActivity:

getSupportActionBar().setDisplayShowHomeEnabled(true); 
getSupportActionBar().setLogo(R.drawable.ic_launcher); 
getSupportActionBar().setDisplayUseLogoEnabled(true); 

Podría ayudar en su caso.

2

Asegúrese de que la intención de su iniciador de actividades se nombra es decir PRINCIPAL,

<intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
    <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 

Por otra parte, añadir el icono de las carpetas de Drawable y luego remitirla en el bloque de aplicación del Manifiesto.

<application 
android:allowBackup="true" 
android:icon="@drawable/icon" 
android:label="@string/app_name" 
android:theme="@style/AppTheme" > 
+0

+1 para que las personas presten atención a su archivo de Manifest. He tenido problemas de iconos realmente complicados debido a que este archivo está un poco mal configurado. – Shadoninja

0

Aviso Win Myo Comentario de Htet sobre la respuesta aceptada. Él resolvió mi problema.

Jems since your answer has so much vote, can you add the following pointer too: Make sure that intent-filter for MAIN and LAUNCHER is not mixed with other intent-filter. – Win Myo Htet Dec 6 '15 at 5:47

"mixta" es la palabra clave. Tuve la intención en mi archivo AndroidManifest.xml que estaba allí para evitar que todos los tipos de archivos estén disponibles en las selecciones de archivos. Si bien comenzó con la solución de la segunda respuesta, contenía la intención adicional para las selecciones de archivos. Esto impidió que Android instalara mis iconos cuando instalé la aplicación. Quería publicar esto en caso de que alguien más se topara con este problema ya que el brillante consejo de Win My Htet podría pasarse por alto ya que es esencialmente una palabra "mixto"

Cuestiones relacionadas