2013-08-01 94 views
41

我已经尝试了各种解决方案从堆栈溢出没有运气。我想要的是。如何从包名获取应用程序的图标?

  1. 我知道不同应用程序的包名称。
  2. 我想从这些包名获得应用程序图标。
  3. 在图像视图中显示这些图标。

例如,我有一个包名com.example.testnotification。如何获得这个应用程序图标并在ImageView中显示它?

回答

93

尝试这个 -

try { 

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

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

,如果你想获得的图标(图片)从那里包名的任何安装的应用程序,然后只要复制并粘贴此代码。它会工作

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

这也适用于:

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(); 
    } 
相关问题