2013-08-01 20 views
41

Ho provato varie soluzioni dallo stack overflow senza fortuna. Quello che voglio.Come posso ottenere l'icona dell'applicazione dal nome del pacchetto?

  1. Conosco il nome del pacchetto di diverse applicazioni.
  2. Desidero ottenere l'icona dell'applicazione dal nome del pacchetto.
  3. Mostra quelle icone in Vista immagine.

Ad esempio, ho il nome del pacchetto com.example.testnotification. Come ottenere l'icona di questa app e mostrarla in un ImageView?

risposta

93

Prova questo-

try { 

    Drawable icon = getPackageManager().getApplicationIcon("com.example.testnotification"); 
    imageView.setImageDrawable(icon); 

     } 
catch (PackageManager.NameNotFoundException e) { 
      e.printStackTrace(); 
     } 
8

se si vuole ottenere l'icona (foto) di qualsiasi applicazione installata da lì packagename, poi basta copiare e incollare questo codice. funzionerà

try 
{ 
    Drawable d = getPackageManager().getApplicationIcon("com.AdhamiPiranJhandukhel.com"); 
    my_imageView.setBackgroundDrawable(d); 
} 
catch (PackageManager.NameNotFoundException e) 
{ 
    return; 
} 
6

Questo funziona anche:

try 
{ 
    Drawable d = getPackageManager().getApplicationIcon(getApplicationInfo()); 
    my_imageView.setBackgroundDrawable(d); 
} 
catch (PackageManager.NameNotFoundException e) 
{ 
    return; 
} 
1
try { 
     Drawable drawable=getPackageManager().getApplicationIcon("com.whatsapp"); 
     imageView.setImageDrawable(drawable); 
    } catch (PackageManager.NameNotFoundException e) { 
     e.printStackTrace(); 
    } 
Problemi correlati